This source file includes following definitions.
- fadd__
- fmul__
- fsub__
- fsubr_
- fdiv__
- fdivr_
- fadd_i
- fmul_i
- fsubri
- fsub_i
- fdivri
- fdiv_i
- faddp_
- fmulp_
- fsubrp
- fsubp_
- fdivrp
- fdivp_
1
2
3
4
5
6
7
8
9
10
11
12
13 #include "fpu_system.h"
14 #include "fpu_emu.h"
15 #include "control_w.h"
16 #include "status_w.h"
17
18
19 void fadd__()
20 {
21
22 clear_C1();
23 reg_add(&st(0), &st(FPU_rm), &st(0), control_word);
24 }
25
26
27 void fmul__()
28 {
29
30 clear_C1();
31 reg_mul(&st(0), &st(FPU_rm), &st(0), control_word);
32 }
33
34
35
36 void fsub__()
37 {
38
39 clear_C1();
40 reg_sub(&st(0), &st(FPU_rm), &st(0), control_word);
41 }
42
43
44 void fsubr_()
45 {
46
47 clear_C1();
48 reg_sub(&st(FPU_rm), &st(0), &st(0), control_word);
49 }
50
51
52 void fdiv__()
53 {
54
55 clear_C1();
56 reg_div(&st(0), &st(FPU_rm), &st(0), control_word);
57 }
58
59
60 void fdivr_()
61 {
62
63 clear_C1();
64 reg_div(&st(FPU_rm), &st(0), &st(0), control_word);
65 }
66
67
68
69 void fadd_i()
70 {
71
72 clear_C1();
73 reg_add(&st(0), &st(FPU_rm), &st(FPU_rm), control_word);
74 }
75
76
77 void fmul_i()
78 {
79
80 clear_C1();
81 reg_mul(&st(0), &st(FPU_rm), &st(FPU_rm), control_word);
82 }
83
84
85 void fsubri()
86 {
87
88
89
90 clear_C1();
91 reg_sub(&st(0), &st(FPU_rm), &st(FPU_rm), control_word);
92 }
93
94
95 void fsub_i()
96 {
97
98
99
100 clear_C1();
101 reg_sub(&st(FPU_rm), &st(0), &st(FPU_rm), control_word);
102 }
103
104
105 void fdivri()
106 {
107
108 clear_C1();
109 reg_div(&st(0), &st(FPU_rm), &st(FPU_rm), control_word);
110 }
111
112
113 void fdiv_i()
114 {
115
116 clear_C1();
117 reg_div(&st(FPU_rm), &st(0), &st(FPU_rm), control_word);
118 }
119
120
121
122 void faddp_()
123 {
124
125 clear_C1();
126 if ( !reg_add(&st(0), &st(FPU_rm), &st(FPU_rm), control_word) )
127 pop();
128 }
129
130
131 void fmulp_()
132 {
133
134 clear_C1();
135 if ( !reg_mul(&st(0), &st(FPU_rm), &st(FPU_rm), control_word) )
136 pop();
137 }
138
139
140
141 void fsubrp()
142 {
143
144
145
146 clear_C1();
147 if ( !reg_sub(&st(0), &st(FPU_rm), &st(FPU_rm), control_word) )
148 pop();
149 }
150
151
152 void fsubp_()
153 {
154
155
156
157 clear_C1();
158 if ( !reg_sub(&st(FPU_rm), &st(0), &st(FPU_rm), control_word) )
159 pop();
160 }
161
162
163 void fdivrp()
164 {
165
166 clear_C1();
167 if ( !reg_div(&st(0), &st(FPU_rm), &st(FPU_rm), control_word) )
168 pop();
169 }
170
171
172 void fdivp_()
173 {
174
175 clear_C1();
176 if ( !reg_div(&st(FPU_rm), &st(0), &st(FPU_rm), control_word) )
177 pop();
178 }
179