diff options
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | mpn/generic/hgcd2.c | 4 |
2 files changed, 3 insertions, 4 deletions
@@ -1,5 +1,8 @@ 2012-11-01 Niels Möller <nisse@lysator.liu.se> + * mpn/generic/hgcd2.c (mpn_hgcd2): Removed redundant loop exit + tests in the single-precision loop. + * mpz/combit.c (mpz_combit): Rewrite, optimizing for the common case. diff --git a/mpn/generic/hgcd2.c b/mpn/generic/hgcd2.c index 0d91f13b8..a9894dab6 100644 --- a/mpn/generic/hgcd2.c +++ b/mpn/generic/hgcd2.c @@ -338,8 +338,6 @@ mpn_hgcd2 (mp_limb_t ah, mp_limb_t al, mp_limb_t bh, mp_limb_t bl, for (;;) { ASSERT (ah >= bh); - if (ah == bh) - break; ah -= bh; if (ah < (CNST_LIMB (1) << (GMP_LIMB_BITS / 2 + 1))) @@ -369,8 +367,6 @@ mpn_hgcd2 (mp_limb_t ah, mp_limb_t al, mp_limb_t bh, mp_limb_t bl, } subtract_a1: ASSERT (bh >= ah); - if (ah == bh) - break; bh -= ah; if (bh < (CNST_LIMB (1) << (GMP_LIMB_BITS / 2 + 1))) |