| .global log1p | |
| .type log1p,@function | |
| log1p: | |
| mov 8(%esp),%eax | |
| fldln2 | |
| and $0x7fffffff,%eax | |
| fldl 4(%esp) | |
| cmp $0x3fd28f00,%eax | |
| ja 1f | |
| cmp $0x00100000,%eax | |
| jb 2f | |
| fyl2xp1 | |
| ret | |
| 1: fld1 | |
| faddp | |
| fyl2x | |
| ret | |
| # subnormal x, return x with underflow | |
| 2: fnstsw %ax | |
| and $16,%ax | |
| jnz 1f | |
| fsts 4(%esp) | |
| fstp %st(1) | |
| 1: ret |