summaryrefslogtreecommitdiff
path: root/sysdeps/libm-i387/s_remquo.S
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/libm-i387/s_remquo.S')
-rw-r--r--sysdeps/libm-i387/s_remquo.S7
1 files changed, 6 insertions, 1 deletions
diff --git a/sysdeps/libm-i387/s_remquo.S b/sysdeps/libm-i387/s_remquo.S
index a4c5a35468..252bf2678a 100644
--- a/sysdeps/libm-i387/s_remquo.S
+++ b/sysdeps/libm-i387/s_remquo.S
@@ -25,7 +25,12 @@ ENTRY(__remquo)
shrl %cl, %eax
andl $3, %eax
movl 20(%esp), %ecx
- movl %eax, (%ecx)
+ movl 8(%esp), %edx
+ xorl 16(%esp), %edx
+ testl $0x80000000, %edx
+ jz 1f
+ negl %eax
+1: movl %eax, (%ecx)
ret
END (__remquo)
weak_alias (__remquo, remquo)