musl-tcc/src/math/i386/scalbnl.s

33 lines
422 B
ArmAsm

.global ldexpl
.type ldexpl,@function
ldexpl:
nop
.global scalblnl
.type scalblnl,@function
scalblnl:
nop
.global scalbnl
.type scalbnl,@function
scalbnl:
mov 16(%esp),%eax
add $0x3ffe,%eax
cmp $0x7ffd,%eax
jae 1f
inc %eax
fldt 4(%esp)
mov %eax,12(%esp)
mov $0x80000000,%eax
mov %eax,8(%esp)
xor %eax,%eax
mov %eax,4(%esp)
fldt 4(%esp)
fmulp
ret
1: fildl 16(%esp)
fldt 4(%esp)
fscale
fstp %st(1)
ret