summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--mpn/generic/gcd_1.c30
2 files changed, 5 insertions, 30 deletions
diff --git a/ChangeLog b/ChangeLog
index e0f2a398d..ddf9a0888 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2018-05-28 Niels Möller <nisse@lysator.liu.se>
+
+ * mpn/generic/gcd_1.c (mpn_gcd_1) [USE_ZEROTAB]: Delete unused code
+ variant for USE_ZEROTAB != 0.
+
2018-05-20 Marco Bodrato <bodrato@mail.dm.unipi.it>
* bootstrap.c: Define DONT_USE_FLOAT_H before including mini-gmp.
diff --git a/mpn/generic/gcd_1.c b/mpn/generic/gcd_1.c
index 72cbe9641..1f139391c 100644
--- a/mpn/generic/gcd_1.c
+++ b/mpn/generic/gcd_1.c
@@ -35,20 +35,6 @@ see https://www.gnu.org/licenses/. */
#define GCD_1_METHOD 2
#endif
-#define USE_ZEROTAB 0
-
-#if USE_ZEROTAB
-#define MAXSHIFT 4
-#define MASK ((1 << MAXSHIFT) - 1)
-static const unsigned char zerotab[1 << MAXSHIFT] =
-{
-#if MAXSHIFT > 4
- 5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
-#endif
- 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0
-};
-#endif
-
/* Does not work for U == 0 or V == 0. It would be tough to make it work for
V == 0 since gcd(x,0) = x, and U does not generally fit in an mp_limb_t.
@@ -161,21 +147,6 @@ mpn_gcd_1 (mp_srcptr up, mp_size_t size, mp_limb_t vlimb)
/* u <-- |u - v| */
ulimb = (t ^ vgtu) - vgtu;
-#if USE_ZEROTAB
- /* Number of trailing zeros is the same no matter if we look at
- * t or ulimb, but using t gives more parallelism. */
- c = zerotab[t & MASK];
-
- while (UNLIKELY (c == MAXSHIFT))
- {
- ulimb >>= MAXSHIFT;
- if (0)
- strip_u_maybe:
- vlimb >>= 1;
-
- c = zerotab[ulimb & MASK];
- }
-#else
if (0)
{
strip_u_maybe:
@@ -183,7 +154,6 @@ mpn_gcd_1 (mp_srcptr up, mp_size_t size, mp_limb_t vlimb)
t = ulimb;
}
count_trailing_zeros (c, t);
-#endif
ulimb = (ulimb >> c) >> 1;
}