1*4882a593Smuzhiyun /*
2*4882a593Smuzhiyun
3*4882a593Smuzhiyun fp_trig.c: floating-point math routines for the Linux-m68k
4*4882a593Smuzhiyun floating point emulator.
5*4882a593Smuzhiyun
6*4882a593Smuzhiyun Copyright (c) 1998-1999 David Huggins-Daines / Roman Zippel.
7*4882a593Smuzhiyun
8*4882a593Smuzhiyun I hereby give permission, free of charge, to copy, modify, and
9*4882a593Smuzhiyun redistribute this software, in source or binary form, provided that
10*4882a593Smuzhiyun the above copyright notice and the following disclaimer are included
11*4882a593Smuzhiyun in all such copies.
12*4882a593Smuzhiyun
13*4882a593Smuzhiyun THIS SOFTWARE IS PROVIDED "AS IS", WITH ABSOLUTELY NO WARRANTY, REAL
14*4882a593Smuzhiyun OR IMPLIED.
15*4882a593Smuzhiyun
16*4882a593Smuzhiyun */
17*4882a593Smuzhiyun
18*4882a593Smuzhiyun #include "fp_emu.h"
19*4882a593Smuzhiyun #include "fp_trig.h"
20*4882a593Smuzhiyun
21*4882a593Smuzhiyun struct fp_ext *
fp_fsin(struct fp_ext * dest,struct fp_ext * src)22*4882a593Smuzhiyun fp_fsin(struct fp_ext *dest, struct fp_ext *src)
23*4882a593Smuzhiyun {
24*4882a593Smuzhiyun uprint("fsin\n");
25*4882a593Smuzhiyun
26*4882a593Smuzhiyun fp_monadic_check(dest, src);
27*4882a593Smuzhiyun
28*4882a593Smuzhiyun return dest;
29*4882a593Smuzhiyun }
30*4882a593Smuzhiyun
31*4882a593Smuzhiyun struct fp_ext *
fp_fcos(struct fp_ext * dest,struct fp_ext * src)32*4882a593Smuzhiyun fp_fcos(struct fp_ext *dest, struct fp_ext *src)
33*4882a593Smuzhiyun {
34*4882a593Smuzhiyun uprint("fcos\n");
35*4882a593Smuzhiyun
36*4882a593Smuzhiyun fp_monadic_check(dest, src);
37*4882a593Smuzhiyun
38*4882a593Smuzhiyun return dest;
39*4882a593Smuzhiyun }
40*4882a593Smuzhiyun
41*4882a593Smuzhiyun struct fp_ext *
fp_ftan(struct fp_ext * dest,struct fp_ext * src)42*4882a593Smuzhiyun fp_ftan(struct fp_ext *dest, struct fp_ext *src)
43*4882a593Smuzhiyun {
44*4882a593Smuzhiyun uprint("ftan\n");
45*4882a593Smuzhiyun
46*4882a593Smuzhiyun fp_monadic_check(dest, src);
47*4882a593Smuzhiyun
48*4882a593Smuzhiyun return dest;
49*4882a593Smuzhiyun }
50*4882a593Smuzhiyun
51*4882a593Smuzhiyun struct fp_ext *
fp_fasin(struct fp_ext * dest,struct fp_ext * src)52*4882a593Smuzhiyun fp_fasin(struct fp_ext *dest, struct fp_ext *src)
53*4882a593Smuzhiyun {
54*4882a593Smuzhiyun uprint("fasin\n");
55*4882a593Smuzhiyun
56*4882a593Smuzhiyun fp_monadic_check(dest, src);
57*4882a593Smuzhiyun
58*4882a593Smuzhiyun return dest;
59*4882a593Smuzhiyun }
60*4882a593Smuzhiyun
61*4882a593Smuzhiyun struct fp_ext *
fp_facos(struct fp_ext * dest,struct fp_ext * src)62*4882a593Smuzhiyun fp_facos(struct fp_ext *dest, struct fp_ext *src)
63*4882a593Smuzhiyun {
64*4882a593Smuzhiyun uprint("facos\n");
65*4882a593Smuzhiyun
66*4882a593Smuzhiyun fp_monadic_check(dest, src);
67*4882a593Smuzhiyun
68*4882a593Smuzhiyun return dest;
69*4882a593Smuzhiyun }
70*4882a593Smuzhiyun
71*4882a593Smuzhiyun struct fp_ext *
fp_fatan(struct fp_ext * dest,struct fp_ext * src)72*4882a593Smuzhiyun fp_fatan(struct fp_ext *dest, struct fp_ext *src)
73*4882a593Smuzhiyun {
74*4882a593Smuzhiyun uprint("fatan\n");
75*4882a593Smuzhiyun
76*4882a593Smuzhiyun fp_monadic_check(dest, src);
77*4882a593Smuzhiyun
78*4882a593Smuzhiyun return dest;
79*4882a593Smuzhiyun }
80*4882a593Smuzhiyun
81*4882a593Smuzhiyun struct fp_ext *
fp_fsinh(struct fp_ext * dest,struct fp_ext * src)82*4882a593Smuzhiyun fp_fsinh(struct fp_ext *dest, struct fp_ext *src)
83*4882a593Smuzhiyun {
84*4882a593Smuzhiyun uprint("fsinh\n");
85*4882a593Smuzhiyun
86*4882a593Smuzhiyun fp_monadic_check(dest, src);
87*4882a593Smuzhiyun
88*4882a593Smuzhiyun return dest;
89*4882a593Smuzhiyun }
90*4882a593Smuzhiyun
91*4882a593Smuzhiyun struct fp_ext *
fp_fcosh(struct fp_ext * dest,struct fp_ext * src)92*4882a593Smuzhiyun fp_fcosh(struct fp_ext *dest, struct fp_ext *src)
93*4882a593Smuzhiyun {
94*4882a593Smuzhiyun uprint("fcosh\n");
95*4882a593Smuzhiyun
96*4882a593Smuzhiyun fp_monadic_check(dest, src);
97*4882a593Smuzhiyun
98*4882a593Smuzhiyun return dest;
99*4882a593Smuzhiyun }
100*4882a593Smuzhiyun
101*4882a593Smuzhiyun struct fp_ext *
fp_ftanh(struct fp_ext * dest,struct fp_ext * src)102*4882a593Smuzhiyun fp_ftanh(struct fp_ext *dest, struct fp_ext *src)
103*4882a593Smuzhiyun {
104*4882a593Smuzhiyun uprint("ftanh\n");
105*4882a593Smuzhiyun
106*4882a593Smuzhiyun fp_monadic_check(dest, src);
107*4882a593Smuzhiyun
108*4882a593Smuzhiyun return dest;
109*4882a593Smuzhiyun }
110*4882a593Smuzhiyun
111*4882a593Smuzhiyun struct fp_ext *
fp_fatanh(struct fp_ext * dest,struct fp_ext * src)112*4882a593Smuzhiyun fp_fatanh(struct fp_ext *dest, struct fp_ext *src)
113*4882a593Smuzhiyun {
114*4882a593Smuzhiyun uprint("fatanh\n");
115*4882a593Smuzhiyun
116*4882a593Smuzhiyun fp_monadic_check(dest, src);
117*4882a593Smuzhiyun
118*4882a593Smuzhiyun return dest;
119*4882a593Smuzhiyun }
120*4882a593Smuzhiyun
121*4882a593Smuzhiyun struct fp_ext *
fp_fsincos0(struct fp_ext * dest,struct fp_ext * src)122*4882a593Smuzhiyun fp_fsincos0(struct fp_ext *dest, struct fp_ext *src)
123*4882a593Smuzhiyun {
124*4882a593Smuzhiyun uprint("fsincos0\n");
125*4882a593Smuzhiyun
126*4882a593Smuzhiyun return dest;
127*4882a593Smuzhiyun }
128*4882a593Smuzhiyun
129*4882a593Smuzhiyun struct fp_ext *
fp_fsincos1(struct fp_ext * dest,struct fp_ext * src)130*4882a593Smuzhiyun fp_fsincos1(struct fp_ext *dest, struct fp_ext *src)
131*4882a593Smuzhiyun {
132*4882a593Smuzhiyun uprint("fsincos1\n");
133*4882a593Smuzhiyun
134*4882a593Smuzhiyun return dest;
135*4882a593Smuzhiyun }
136*4882a593Smuzhiyun
137*4882a593Smuzhiyun struct fp_ext *
fp_fsincos2(struct fp_ext * dest,struct fp_ext * src)138*4882a593Smuzhiyun fp_fsincos2(struct fp_ext *dest, struct fp_ext *src)
139*4882a593Smuzhiyun {
140*4882a593Smuzhiyun uprint("fsincos2\n");
141*4882a593Smuzhiyun
142*4882a593Smuzhiyun return dest;
143*4882a593Smuzhiyun }
144*4882a593Smuzhiyun
145*4882a593Smuzhiyun struct fp_ext *
fp_fsincos3(struct fp_ext * dest,struct fp_ext * src)146*4882a593Smuzhiyun fp_fsincos3(struct fp_ext *dest, struct fp_ext *src)
147*4882a593Smuzhiyun {
148*4882a593Smuzhiyun uprint("fsincos3\n");
149*4882a593Smuzhiyun
150*4882a593Smuzhiyun return dest;
151*4882a593Smuzhiyun }
152*4882a593Smuzhiyun
153*4882a593Smuzhiyun struct fp_ext *
fp_fsincos4(struct fp_ext * dest,struct fp_ext * src)154*4882a593Smuzhiyun fp_fsincos4(struct fp_ext *dest, struct fp_ext *src)
155*4882a593Smuzhiyun {
156*4882a593Smuzhiyun uprint("fsincos4\n");
157*4882a593Smuzhiyun
158*4882a593Smuzhiyun return dest;
159*4882a593Smuzhiyun }
160*4882a593Smuzhiyun
161*4882a593Smuzhiyun struct fp_ext *
fp_fsincos5(struct fp_ext * dest,struct fp_ext * src)162*4882a593Smuzhiyun fp_fsincos5(struct fp_ext *dest, struct fp_ext *src)
163*4882a593Smuzhiyun {
164*4882a593Smuzhiyun uprint("fsincos5\n");
165*4882a593Smuzhiyun
166*4882a593Smuzhiyun return dest;
167*4882a593Smuzhiyun }
168*4882a593Smuzhiyun
169*4882a593Smuzhiyun struct fp_ext *
fp_fsincos6(struct fp_ext * dest,struct fp_ext * src)170*4882a593Smuzhiyun fp_fsincos6(struct fp_ext *dest, struct fp_ext *src)
171*4882a593Smuzhiyun {
172*4882a593Smuzhiyun uprint("fsincos6\n");
173*4882a593Smuzhiyun
174*4882a593Smuzhiyun return dest;
175*4882a593Smuzhiyun }
176*4882a593Smuzhiyun
177*4882a593Smuzhiyun struct fp_ext *
fp_fsincos7(struct fp_ext * dest,struct fp_ext * src)178*4882a593Smuzhiyun fp_fsincos7(struct fp_ext *dest, struct fp_ext *src)
179*4882a593Smuzhiyun {
180*4882a593Smuzhiyun uprint("fsincos7\n");
181*4882a593Smuzhiyun
182*4882a593Smuzhiyun return dest;
183*4882a593Smuzhiyun }
184