1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
.global atan .type atan,@function atan: fldl 4(%esp) mov 8(%esp),%eax add %eax,%eax cmp $0x00200000,%eax jb 1f fld1 fpatan fstpl 4(%esp) fldl 4(%esp) ret # subnormal x, return x with underflow 1: fsts 4(%esp) ret