]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Return the correct result when the same dividend and divisor are provided,
authorUlrich Drepper <drepper@redhat.com>
Thu, 20 Oct 2005 05:24:59 +0000 (05:24 +0000)
committerUlrich Drepper <drepper@redhat.com>
Thu, 20 Oct 2005 05:24:59 +0000 (05:24 +0000)
and they're negative numbers.

sysdeps/alpha/divqu.S
sysdeps/alpha/remqu.S

index f2a8a4d53335e44a4b47265e17d946505874f1ba..ef3cdb1b2b53300bd10cf109994821fdc4c5ba0b 100644 (file)
@@ -240,7 +240,7 @@ $y_is_neg:
        /* If we get here, Y is so big that bit 63 is set.  The results
           from the divide will be completely wrong.  Fortunately, the
           quotient must be either 0 or 1, so just compute it directly.  */
-       cmpult  Y, X, RV
+       cmpule  Y, X, RV
        excb
        mt_fpcr $f3
        ldt     $f0, 0(sp)
index dcc1c88b3c5c0d3f6fb3255817baba6a858fa63d..398a345a18578569707299fc30e83b65d7ae99d2 100644 (file)
@@ -246,7 +246,7 @@ $y_is_neg:
           from the divide will be completely wrong.  Fortunately, the
           quotient must be either 0 or 1, so the remainder must be X
           or X-Y, so just compute it directly.  */
-       cmpult  Y, X, AT
+       cmpule  Y, X, AT
        subq    X, Y, RV
        ldt     $f0, 0(sp)
        cmoveq  AT, X, RV