source: trunk/minix/lib/ack/float/adder.s@ 12

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

Minix 3.1.2a

File size: 538 bytes
Line 
1.sect .text; .sect .rom; .sect .data; .sect .bss
2.extern .b64_add
3.sect .text
4.b64_add:
5push ebp
6mov ebp,esp
7sub esp,8
8push esi
9push edi
10mov esi,8(ebp)
11mov edi,12(ebp)
12mov edx,-1
13sub edx,(esi)
14xor eax,eax
15cmp (edi),edx
16jbe 1f
17inc eax
181:
19mov -4(ebp),eax
20mov edx,(edi)
21add (esi),edx
22mov edx,-1
23sub edx,4(esi)
24xor eax,eax
25cmp 4(edi),edx
26jbe 1f
27inc eax
281:
29mov -8(ebp),eax
30mov edx,4(edi)
31add 4(esi),edx
32cmp -8(ebp),0
33je I1_4
34mov edx,(esi)
35inc edx
36mov (esi),edx
37jne I1_4
38mov eax,1
39jmp I1_1
40I1_4:
41mov eax,-4(ebp)
42I1_1:
43pop edi
44pop esi
45leave
46ret
Note: See TracBrowser for help on using the repository browser.