implement ffsl and ffsll functions
[musl] / src / math / x32 / exp2l.s
index 0d6cd56..d9f4d6e 100644 (file)
@@ -1,11 +1,11 @@
 .global expm1l
 .type expm1l,@function
 expm1l:
-       fldt 8(%rsp)
+       fldt 8(%esp)
        fldl2e
        fmulp
-       movl $0xc2820000,-4(%rsp)
-       flds -4(%rsp)
+       movl $0xc2820000,-4(%esp)
+       flds -4(%esp)
        fucomp %st(1)
        fnstsw %ax
        sahf
@@ -35,21 +35,21 @@ expm1l:
 .global exp2l
 .type exp2l,@function
 exp2l:
-       fldt 8(%rsp)
+       fldt 8(%esp)
 1:     fld %st(0)
-       sub $16,%rsp
-       fstpt (%rsp)
-       mov 8(%rsp),%ax
+       sub $16,%esp
+       fstpt (%esp)
+       mov 8(%esp),%ax
        and $0x7fff,%ax
        cmp $0x3fff+13,%ax
        jb 4f             # |x| < 8192
        cmp $0x3fff+15,%ax
        jae 3f            # |x| >= 32768
-       fsts (%rsp)
-       cmpl $0xc67ff800,(%rsp)
+       fsts (%esp)
+       cmpl $0xc67ff800,(%esp)
        jb 2f             # x > -16382
-       movl $0x5f000000,(%rsp)
-       flds (%rsp)       # 0x1p63
+       movl $0x5f000000,(%esp)
+       flds (%esp)       # 0x1p63
        fld %st(1)
        fsub %st(1)
        faddp
@@ -57,10 +57,10 @@ exp2l:
        fnstsw
        sahf
        je 2f             # x - 0x1p63 + 0x1p63 == x
-       movl $1,(%rsp)
-       flds (%rsp)       # 0x1p-149
+       movl $1,(%esp)
+       flds (%esp)       # 0x1p-149
        fdiv %st(1)
-       fstps (%rsp)      # raise underflow
+       fstps (%esp)      # raise underflow
 2:     fld1
        fld %st(1)
        frndint
@@ -70,21 +70,21 @@ exp2l:
        faddp             # 2^(x-rint(x))
 1:     fscale
        fstp %st(1)
-       add $16,%rsp
+       add $16,%esp
        ret
 3:     xor %eax,%eax
 4:     cmp $0x3fff-64,%ax
        fld1
        jb 1b             # |x| < 0x1p-64
-       fstpt (%rsp)
-       fistl 8(%rsp)
-       fildl 8(%rsp)
+       fstpt (%esp)
+       fistl 8(%esp)
+       fildl 8(%esp)
        fsubrp %st(1)
-       addl $0x3fff,8(%rsp)
+       addl $0x3fff,8(%esp)
        f2xm1
        fld1
        faddp             # 2^(x-rint(x))
-       fldt (%rsp)       # 2^rint(x)
+       fldt (%esp)       # 2^rint(x)
        fmulp
-       add $16,%rsp
+       add $16,%esp
        ret