.global expf expf: mov 4(%esp),%eax flds 4(%esp) shr $23,%eax inc %al jz 1f jmp 0f .global exp exp: mov 8(%esp),%eax fldl 4(%esp) shl %eax cmp $0xffe00000,%eax jae 1f 0: fldl2e fmulp fst %st(1) frndint fst %st(2) fsubrp f2xm1 fld1 faddp fscale fstp %st(1) ret 1: fsts 4(%esp) cmpl $0xff800000,4(%esp) jnz 1f fstp %st(0) fldz 1: ret