33 lines
422 B
ArmAsm
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
|