From: Ulrich Drepper Date: Thu, 20 Jun 2002 06:52:16 +0000 (+0000) Subject: Fix three mistakes in computing the quotient. X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=adcce3793625a9ca0335a1ea82093b281fa4664d;p=thirdparty%2Fglibc.git Fix three mistakes in computing the quotient. --- diff --git a/sysdeps/i386/fpu/s_remquo.S b/sysdeps/i386/fpu/s_remquo.S index 4857b98ab4b..5056593214e 100644 --- a/sysdeps/i386/fpu/s_remquo.S +++ b/sysdeps/i386/fpu/s_remquo.S @@ -31,9 +31,10 @@ ENTRY (BP_SYM (__remquo)) andl $4, %ecx andl $3, %eax orl %eax, %ecx - movl $0xef2960, %eax + leal (%ecx,%ecx,2),%ecx + movl $0xef2a60, %eax shrl %cl, %eax - andl $3, %eax + andl $7, %eax movl QUOP(%esp), %ecx CHECK_BOUNDS_BOTH_WIDE (%ecx, QUOP(%esp), $4) movl DVDND+4(%esp), %edx diff --git a/sysdeps/i386/fpu/s_remquof.S b/sysdeps/i386/fpu/s_remquof.S index 90f46dcbc03..d3c5965be45 100644 --- a/sysdeps/i386/fpu/s_remquof.S +++ b/sysdeps/i386/fpu/s_remquof.S @@ -31,9 +31,10 @@ ENTRY (BP_SYM (__remquof)) andl $4, %ecx andl $3, %eax orl %eax, %ecx - movl $0xef2960, %eax + leal (%ecx,%ecx,2),%ecx + movl $0xef2a60, %eax shrl %cl, %eax - andl $3, %eax + andl $7, %eax movl QUOP(%esp), %ecx CHECK_BOUNDS_BOTH_WIDE (%ecx, QUOP(%esp), $4) movl DVDND(%esp), %edx diff --git a/sysdeps/i386/fpu/s_remquol.S b/sysdeps/i386/fpu/s_remquol.S index c71c0022439..65240adbe47 100644 --- a/sysdeps/i386/fpu/s_remquol.S +++ b/sysdeps/i386/fpu/s_remquol.S @@ -31,9 +31,10 @@ ENTRY (BP_SYM (__remquol)) andl $4, %ecx andl $3, %eax orl %eax, %ecx - movl $0xef2960, %eax + leal (%ecx,%ecx,2),%ecx + movl $0xef2a60, %eax shrl %cl, %eax - andl $3, %eax + andl $7, %eax movl QUOP(%esp), %ecx CHECK_BOUNDS_BOTH_WIDE (%ecx, QUOP(%esp), $4) movl DVDND+8(%esp), %edx