fp_arith.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. /* SPDX-License-Identifier: GPL-2.0-or-later */
  2. /*
  3. fp_arith.h: floating-point math routines for the Linux-m68k
  4. floating point emulator.
  5. Copyright (c) 1998 David Huggins-Daines.
  6. Somewhat based on the AlphaLinux floating point emulator, by David
  7. Mosberger-Tang.
  8. */
  9. #ifndef FP_ARITH_H
  10. #define FP_ARITH_H
  11. /* easy ones */
  12. struct fp_ext *
  13. fp_fabs(struct fp_ext *dest, struct fp_ext *src);
  14. struct fp_ext *
  15. fp_fneg(struct fp_ext *dest, struct fp_ext *src);
  16. /* straightforward arithmetic */
  17. struct fp_ext *
  18. fp_fadd(struct fp_ext *dest, struct fp_ext *src);
  19. struct fp_ext *
  20. fp_fsub(struct fp_ext *dest, struct fp_ext *src);
  21. struct fp_ext *
  22. fp_fcmp(struct fp_ext *dest, struct fp_ext *src);
  23. struct fp_ext *
  24. fp_ftst(struct fp_ext *dest, struct fp_ext *src);
  25. struct fp_ext *
  26. fp_fmul(struct fp_ext *dest, struct fp_ext *src);
  27. struct fp_ext *
  28. fp_fdiv(struct fp_ext *dest, struct fp_ext *src);
  29. /* ones that do rounding and integer conversions */
  30. struct fp_ext *
  31. fp_fmod(struct fp_ext *dest, struct fp_ext *src);
  32. struct fp_ext *
  33. fp_frem(struct fp_ext *dest, struct fp_ext *src);
  34. struct fp_ext *
  35. fp_fint(struct fp_ext *dest, struct fp_ext *src);
  36. struct fp_ext *
  37. fp_fintrz(struct fp_ext *dest, struct fp_ext *src);
  38. struct fp_ext *
  39. fp_fscale(struct fp_ext *dest, struct fp_ext *src);
  40. #endif /* FP_ARITH__H */