xref: /linux/arch/m68k/math-emu/fp_arith.h (revision cc04a46f11ea046ed53e2c832ae29e4790f7e35f)
1 /*
2 
3    fp_arith.h: floating-point math routines for the Linux-m68k
4    floating point emulator.
5 
6    Copyright (c) 1998 David Huggins-Daines.
7 
8    Somewhat based on the AlphaLinux floating point emulator, by David
9    Mosberger-Tang.
10 
11    You may copy, modify, and redistribute this file under the terms of
12    the GNU General Public License, version 2, or any later version, at
13    your convenience.
14 
15  */
16 
17 #ifndef FP_ARITH_H
18 #define FP_ARITH_H
19 
20 /* easy ones */
21 struct fp_ext *
22 fp_fabs(struct fp_ext *dest, struct fp_ext *src);
23 struct fp_ext *
24 fp_fneg(struct fp_ext *dest, struct fp_ext *src);
25 
26 /* straightforward arithmetic */
27 struct fp_ext *
28 fp_fadd(struct fp_ext *dest, struct fp_ext *src);
29 struct fp_ext *
30 fp_fsub(struct fp_ext *dest, struct fp_ext *src);
31 struct fp_ext *
32 fp_fcmp(struct fp_ext *dest, struct fp_ext *src);
33 struct fp_ext *
34 fp_ftst(struct fp_ext *dest, struct fp_ext *src);
35 struct fp_ext *
36 fp_fmul(struct fp_ext *dest, struct fp_ext *src);
37 struct fp_ext *
38 fp_fdiv(struct fp_ext *dest, struct fp_ext *src);
39 
40 /* ones that do rounding and integer conversions */
41 struct fp_ext *
42 fp_fmod(struct fp_ext *dest, struct fp_ext *src);
43 struct fp_ext *
44 fp_frem(struct fp_ext *dest, struct fp_ext *src);
45 struct fp_ext *
46 fp_fint(struct fp_ext *dest, struct fp_ext *src);
47 struct fp_ext *
48 fp_fintrz(struct fp_ext *dest, struct fp_ext *src);
49 struct fp_ext *
50 fp_fscale(struct fp_ext *dest, struct fp_ext *src);
51 
52 #endif	/* FP_ARITH__H */
53