1.global asinf 2.type asinf,@function 3asinf: 4 flds 4(%esp) 5 mov 4(%esp),%eax 6 add %eax,%eax 7 cmp $0x01000000,%eax 8 jae 1f 9 # subnormal x, return x with underflow 10 fnstsw %ax 11 and $16,%ax 12 jnz 2f 13 fld %st(0) 14 fmul %st(1) 15 fstps 4(%esp) 162: ret 17 18.global asinl 19.type asinl,@function 20asinl: 21 fldt 4(%esp) 22 jmp 1f 23 24.global asin 25.type asin,@function 26asin: 27 fldl 4(%esp) 28 mov 8(%esp),%eax 29 add %eax,%eax 30 cmp $0x00200000,%eax 31 jae 1f 32 # subnormal x, return x with underflow 33 fnstsw %ax 34 and $16,%ax 35 jnz 2f 36 fsts 4(%esp) 372: ret 381: fld %st(0) 39 fld1 40 fsub %st(0),%st(1) 41 fadd %st(2) 42 fmulp 43 fsqrt 44 fpatan 45 ret 46