xref: /linux/arch/m68k/math-emu/fp_trig.h (revision 0ea5c948cb64bab5bc7a5516774eb8536f05aa0d)
1 /*
2 
3   fp_trig.h: floating-point math routines for the Linux-m68k
4   floating point emulator.
5 
6   Copyright (c) 1998 David Huggins-Daines.
7 
8   I hereby give permission, free of charge, to copy, modify, and
9   redistribute this software, in source or binary form, provided that
10   the above copyright notice and the following disclaimer are included
11   in all such copies.
12 
13   THIS SOFTWARE IS PROVIDED "AS IS", WITH ABSOLUTELY NO WARRANTY, REAL
14   OR IMPLIED.
15 
16 */
17 
18 #ifndef _FP_TRIG_H
19 #define _FP_TRIG_H
20 
21 #include "fp_emu.h"
22 
23 /* floating point trigonometric instructions:
24 
25    the arguments to these are in the "internal" extended format, that
26    is, an "exploded" version of the 96-bit extended fp format used by
27    the 68881.
28 
29    they return a status code, which should end up in %d0, if all goes
30    well.  */
31 
32 struct fp_ext *fp_fsin(struct fp_ext *dest, struct fp_ext *src);
33 struct fp_ext *fp_fcos(struct fp_ext *dest, struct fp_ext *src);
34 struct fp_ext *fp_ftan(struct fp_ext *dest, struct fp_ext *src);
35 struct fp_ext *fp_fasin(struct fp_ext *dest, struct fp_ext *src);
36 struct fp_ext *fp_facos(struct fp_ext *dest, struct fp_ext *src);
37 struct fp_ext *fp_fatan(struct fp_ext *dest, struct fp_ext *src);
38 struct fp_ext *fp_fsinh(struct fp_ext *dest, struct fp_ext *src);
39 struct fp_ext *fp_fcosh(struct fp_ext *dest, struct fp_ext *src);
40 struct fp_ext *fp_ftanh(struct fp_ext *dest, struct fp_ext *src);
41 struct fp_ext *fp_fatanh(struct fp_ext *dest, struct fp_ext *src);
42 struct fp_ext *fp_fsincos0(struct fp_ext *dest, struct fp_ext *src);
43 struct fp_ext *fp_fsincos1(struct fp_ext *dest, struct fp_ext *src);
44 struct fp_ext *fp_fsincos2(struct fp_ext *dest, struct fp_ext *src);
45 struct fp_ext *fp_fsincos3(struct fp_ext *dest, struct fp_ext *src);
46 struct fp_ext *fp_fsincos4(struct fp_ext *dest, struct fp_ext *src);
47 struct fp_ext *fp_fsincos5(struct fp_ext *dest, struct fp_ext *src);
48 struct fp_ext *fp_fsincos6(struct fp_ext *dest, struct fp_ext *src);
49 struct fp_ext *fp_fsincos7(struct fp_ext *dest, struct fp_ext *src);
50 
51 #endif /* _FP_TRIG_H */
52