translate: fcom and more
[ia32rtools.git] / tests / x87.asm
1
2 _text           segment para public 'CODE' use32
3
4 sub_test        proc near
5
6 var_20          = dword ptr -20h
7 var_18          = qword ptr -18h
8 arg_0           = dword ptr  8
9
10                 push    ebp
11                 mov     ebp, esp
12                 sub     esp, 20h
13                 fild    [ebp+var_20]
14                 fidiv   [ebp+arg_0]
15                 fmul    [ebp+var_18]
16                 fild    [ebp+var_20]
17                 fdiv    st(1), st
18                 faddp   st(1), st
19                 fcom    [ebp+var_18]
20                 xor     eax, eax
21                 fnstsw  ax
22                 test    ah, 41h
23                 mov     eax, 0
24                 setz    al
25                 fld1
26                 fdivr   [ebp+var_18]
27                 fxch    st(1)
28                 fchs
29                 fsubrp  st, st
30                 fld     st
31                 fyl2x
32                 fld     st
33                 fistp   [ebp+var_20]
34                 fst     [ebp+var_18]
35                 call    __ftol
36                 leave
37                 retn
38 sub_test        endp
39
40
41 _text           ends
42
43 ; vim:expandtab