]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Fix three mistakes in computing the quotient.
authorUlrich Drepper <drepper@redhat.com>
Thu, 20 Jun 2002 06:52:16 +0000 (06:52 +0000)
committerUlrich Drepper <drepper@redhat.com>
Thu, 20 Jun 2002 06:52:16 +0000 (06:52 +0000)
sysdeps/i386/fpu/s_remquo.S
sysdeps/i386/fpu/s_remquof.S
sysdeps/i386/fpu/s_remquol.S

index 4857b98ab4be913b4e9bf1df156a99ef212b7c49..5056593214e66f3c4f651769365ad244d0bec9ef 100644 (file)
@@ -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
index 90f46dcbc03247b2a49c421509ca07ec39b15ed7..d3c5965be455e42d645319b551665e7201389178 100644 (file)
@@ -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
index c71c00224392324ffadfe2d1a121ae8ef9662006..65240adbe47f60146a9041dfacc8ed369fe4c51e 100644 (file)
@@ -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