factor: factor2 variable is unused now, drop it
authorDenys Vlasenko <vda.linux@googlemail.com>
Sun, 9 Apr 2017 21:19:47 +0000 (23:19 +0200)
committerDenys Vlasenko <vda.linux@googlemail.com>
Sun, 9 Apr 2017 21:19:47 +0000 (23:19 +0200)
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
coreutils/factor.c

index 1c01e3f27d7a0f20516090ca937ecc0348337fae..85284aa27f033d26d58afc61e623f5d3bb8c6999 100644 (file)
@@ -89,7 +89,6 @@ static NOINLINE half_t isqrt_odd(wide_t N)
 
 static NOINLINE void factorize(wide_t N)
 {
-       wide_t factor2;
        half_t factor;
        half_t max_factor;
        unsigned count3;
@@ -105,7 +104,6 @@ static NOINLINE void factorize(wide_t N)
        max_factor = isqrt_odd(N);
        count3 = 3;
        factor = 3;
-       factor2 = 3 * 3;
        for (;;) {
                /* The division is the most costly part of the loop.
                 * On 64bit CPUs, takes at best 12 cycles, often ~20.
@@ -118,10 +116,6 @@ static NOINLINE void factorize(wide_t N)
  next_factor:
                if (factor >= max_factor)
                        break;
-               /* (f + 2)^2 = f^2 + 4*f + 4 = f^2 + 4*(f+1) */
-               factor2 = factor2 + 4 * (factor + 1);
-               /* overflow is impossible due to max_factor check */
-               /* (factor2 > N) is impossible due to max_factor check */
                factor += 2;
                /* Rudimentary wheel sieving: skip multiples of 3:
                 * Every third odd number is divisible by three and thus isn't a prime: