提交 411efb3b 编写于 作者: S Szabolcs Nagy

math: fix i386 atan2.s to raise underflow for subnormal results

上级 6d85096f
......@@ -4,4 +4,14 @@ atan2:
fldl 4(%esp)
fldl 12(%esp)
fpatan
ret
fstl 4(%esp)
mov 8(%esp),%eax
add %eax,%eax
cmp $0x00200000,%eax
jae 1f
# subnormal x, return x with underflow
fnstsw %ax
and $16,%ax
jnz 1f
fsts 4(%esp)
1: ret
......@@ -4,4 +4,16 @@ atan2f:
flds 4(%esp)
flds 8(%esp)
fpatan
ret
fsts 4(%esp)
mov 4(%esp),%eax
add %eax,%eax
cmp $0x01000000,%eax
jae 1f
# subnormal x, return x with underflow
fnstsw %ax
and $16,%ax
jnz 1f
fld %st(0)
fmul %st(1)
fstps 4(%esp)
1: ret
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册