1
0
mirror of https://github.com/GOSTSec/vanitygen synced 2025-02-07 12:24:20 +00:00

Fix a bug in carry/borrow propagation.

This commit is contained in:
samr7 2011-08-04 01:05:57 -07:00
parent 7ba90d3086
commit b053d1c0c3

View File

@ -323,7 +323,7 @@ bn_uadd_vliw(bignum *r, bignum *a, bignum *b)
c |= (a->d[i] > x.d[i]) ? (1 << i) : 0;
cp |= (!~x.d[i]) ? (1 << i) : 0;
}
c = ((cp + (c << 1)) & ~cp);
c = ((cp + (c << 1)) ^ cp);
r->d[0] = x.d[0];
#ifdef UNROLL_MAX
#pragma unroll UNROLL_MAX
@ -351,7 +351,7 @@ bn_uadd_c_vliw(bignum *r, bignum *a, __constant bn_word *b)
c |= (b[i] > x.d[i]) ? (1 << i) : 0;
cp |= (!~x.d[i]) ? (1 << i) : 0;
}
c = ((cp + (c << 1)) & ~cp);
c = ((cp + (c << 1)) ^ cp);
r->d[0] = x.d[0];
#ifdef UNROLL_MAX
#pragma unroll UNROLL_MAX
@ -379,7 +379,7 @@ bn_usub_vliw(bignum *r, bignum *a, bignum *b)
c |= (a->d[i] < b->d[i]) ? (1 << i) : 0;
cp |= (!x.d[i]) ? (1 << i) : 0;
}
c = ((cp + (c << 1)) & ~cp);
c = ((cp + (c << 1)) ^ cp);
r->d[0] = x.d[0];
#ifdef UNROLL_MAX
#pragma unroll UNROLL_MAX
@ -407,7 +407,7 @@ bn_usub_c_vliw(bignum *r, bignum *a, __constant bn_word *b)
c |= (a->d[i] < b[i]) ? (1 << i) : 0;
cp |= (!x.d[i]) ? (1 << i) : 0;
}
c = ((cp + (c << 1)) & ~cp);
c = ((cp + (c << 1)) ^ cp);
r->d[0] = x.d[0];
#ifdef UNROLL_MAX
#pragma unroll UNROLL_MAX