translate: float: stack mode and some more ops
[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                 fld1
20                 fdivr   [ebp+var_18]
21                 fxch    st(1)
22                 fchs
23                 fsubrp  st, st
24                 fld     st(1)
25                 fyl2x
26                 fld     st
27                 fstp    [ebp+var_18]
28                 fst     [ebp+var_20]
29                 call    __ftol
30                 leave
31                 retn
32 sub_test        endp
33
34
35 _text           ends
36
37 ; vim:expandtab