source: trunk/minix/lib/ack/float/fif8.s@ 22

Last change on this file since 22 was 9, checked in by Mattia Monga, 14 years ago

Minix 3.1.2a

File size: 1.4 KB
Line 
1.sect .text; .sect .rom; .sect .data; .sect .bss
2.extern .fif8
3.sect .text
4.fif8:
5push ebp
6mov ebp,esp
7sub esp,24
8push esi
9mov esi,8(ebp)
10push 8
11lea eax,-12(ebp)
12push eax
13lea eax,20(ebp)
14push eax
15call .extend
16add esp,12
17push 8
18lea eax,-24(ebp)
19push eax
20lea eax,12(ebp)
21push eax
22call .extend
23add esp,12
24lea eax,-24(ebp)
25push eax
26lea eax,-12(ebp)
27push eax
28call .mul_ext
29pop ecx
30pop ecx
31lea eax,-12(ebp)
32push eax
33lea eax,-24(ebp)
34push eax
35mov ecx,3
36call .blm
37push 8
38lea eax,20(ebp)
39push eax
40lea eax,-24(ebp)
41push eax
42call .compact
43add esp,12
44movsx eax,-10(ebp)
45test eax,eax
46jns I1_4
47mov (esi),0
48mov 4(esi),0
49lea eax,20(ebp)
50push eax
51lea eax,8(esi)
52push eax
53mov ecx,2
54call .blm
55jmp I1_1
56I1_4:
57movsx eax,-10(ebp)
58cmp eax,51
59jle I1_7
60lea eax,20(ebp)
61push eax
62push esi
63mov ecx,2
64call .blm
65mov 8(esi),0
66mov 12(esi),0
67jmp I1_1
68I1_7:
69movsx eax,-10(ebp)
70sub eax,63
71neg eax
72push eax
73lea eax,-8(ebp)
74push eax
75call .b64_sft
76pop ecx
77pop ecx
78movsx eax,-10(ebp)
79sub eax,63
80push eax
81lea eax,-8(ebp)
82push eax
83call .b64_sft
84pop ecx
85pop ecx
86push 8
87push esi
88lea eax,-12(ebp)
89push eax
90call .compact
91add esp,12
92push 8
93lea eax,-24(ebp)
94push eax
95push esi
96call .extend
97add esp,12
98push 8
99lea eax,-12(ebp)
100push eax
101lea eax,20(ebp)
102push eax
103call .extend
104add esp,12
105lea eax,-24(ebp)
106push eax
107lea eax,-12(ebp)
108push eax
109call .sub_ext
110pop ecx
111pop ecx
112push 8
113lea eax,8(esi)
114push eax
115lea eax,-12(ebp)
116push eax
117call .compact
118add esp,12
119I1_1:
120pop esi
121leave
122ret
Note: See TracBrowser for help on using the repository browser.