summaryrefslogtreecommitdiff
path: root/mpf/set_str.c
diff options
context:
space:
mode:
authortege <tege@gmplib.org>2003-05-26 20:45:30 +0200
committertege <tege@gmplib.org>2003-05-26 20:45:30 +0200
commit853d438cdedb43c7280e6329a10fc505b14537d2 (patch)
tree8006f3e9a8eca63ac20f7fd992188c9dfb95e2c5 /mpf/set_str.c
parent29dbfd627ed0d57b505603c080a011f980c6cb3f (diff)
downloadgmp-853d438cdedb43c7280e6329a10fc505b14537d2.tar.gz
(mpn_pow_1_highpart): Cleanup.
Diffstat (limited to 'mpf/set_str.c')
-rw-r--r--mpf/set_str.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/mpf/set_str.c b/mpf/set_str.c
index f23c48baa..7438bd7df 100644
--- a/mpf/set_str.c
+++ b/mpf/set_str.c
@@ -56,11 +56,11 @@ extern const unsigned char __gmp_digit_value_tab[];
Put the count of omitted low limbs in *ign.
Return the actual size (which might be less than prec). */
static mp_size_t
-mpn_pow_1_highpart (mp_ptr rp, mp_size_t *ign,
+mpn_pow_1_highpart (mp_ptr rp, mp_size_t *ignp,
mp_limb_t base, mp_exp_t exp,
mp_size_t prec, mp_ptr tp)
{
- mp_size_t radj = 0; /* counts number of ignored low limbs in r */
+ mp_size_t ign; /* counts number of ignored low limbs in r */
mp_size_t off; /* keeps track of offset where value starts */
mp_ptr passed_rp = rp;
mp_size_t rn;
@@ -70,18 +70,19 @@ mpn_pow_1_highpart (mp_ptr rp, mp_size_t *ign,
rp[0] = base;
rn = 1;
off = 0;
+ ign = 0;
count_leading_zeros (cnt, exp);
for (i = GMP_LIMB_BITS - cnt - 2; i >= 0; i--)
{
mpn_sqr_n (tp, rp + off, rn);
rn = 2 * rn;
rn -= tp[rn - 1] == 0;
- radj <<= 1;
+ ign <<= 1;
off = 0;
if (rn > prec)
{
- radj += rn - prec;
+ ign += rn - prec;
off = rn - prec;
rn = prec;
}
@@ -99,13 +100,13 @@ mpn_pow_1_highpart (mp_ptr rp, mp_size_t *ign,
if (rn > prec)
{
- radj += rn - prec;
+ ign += rn - prec;
rp += rn - prec;
rn = prec;
}
MPN_COPY_INCR (passed_rp, rp + off, rn);
- *ign = radj;
+ *ignp = ign;
return rn;
}