summaryrefslogtreecommitdiff
path: root/bcprov/src/main/java/org/bouncycastle/math/raw/Nat224.java
diff options
context:
space:
mode:
Diffstat (limited to 'bcprov/src/main/java/org/bouncycastle/math/raw/Nat224.java')
-rw-r--r--bcprov/src/main/java/org/bouncycastle/math/raw/Nat224.java36
1 files changed, 18 insertions, 18 deletions
diff --git a/bcprov/src/main/java/org/bouncycastle/math/raw/Nat224.java b/bcprov/src/main/java/org/bouncycastle/math/raw/Nat224.java
index bbe81caa..9ff107c1 100644
--- a/bcprov/src/main/java/org/bouncycastle/math/raw/Nat224.java
+++ b/bcprov/src/main/java/org/bouncycastle/math/raw/Nat224.java
@@ -793,8 +793,8 @@ public abstract class Nat224
}
long x_3 = x[3] & M;
- long zz_5 = zz[5] & M;
- long zz_6 = zz[6] & M;
+ long zz_5 = (zz[5] & M) + (zz_4 >>> 32); zz_4 &= M;
+ long zz_6 = (zz[6] & M) + (zz_5 >>> 32); zz_5 &= M;
{
zz_3 += x_3 * x_0;
w = (int)zz_3;
@@ -808,8 +808,8 @@ public abstract class Nat224
}
long x_4 = x[4] & M;
- long zz_7 = zz[7] & M;
- long zz_8 = zz[8] & M;
+ long zz_7 = (zz[7] & M) + (zz_6 >>> 32); zz_6 &= M;
+ long zz_8 = (zz[8] & M) + (zz_7 >>> 32); zz_7 &= M;
{
zz_4 += x_4 * x_0;
w = (int)zz_4;
@@ -825,8 +825,8 @@ public abstract class Nat224
}
long x_5 = x[5] & M;
- long zz_9 = zz[9] & M;
- long zz_10 = zz[10] & M;
+ long zz_9 = (zz[9] & M) + (zz_8 >>> 32); zz_8 &= M;
+ long zz_10 = (zz[10] & M) + (zz_9 >>> 32); zz_9 &= M;
{
zz_5 += x_5 * x_0;
w = (int)zz_5;
@@ -844,8 +844,8 @@ public abstract class Nat224
}
long x_6 = x[6] & M;
- long zz_11 = zz[11] & M;
- long zz_12 = zz[12] & M;
+ long zz_11 = (zz[11] & M) + (zz_10 >>> 32); zz_10 &= M;
+ long zz_12 = (zz[12] & M) + (zz_11 >>> 32); zz_11 &= M;
{
zz_6 += x_6 * x_0;
w = (int)zz_6;
@@ -877,7 +877,7 @@ public abstract class Nat224
w = (int)zz_12;
zz[12] = (w << 1) | c;
c = w >>> 31;
- w = zz[13] + (int)(zz_12 >> 32);
+ w = zz[13] + (int)(zz_12 >>> 32);
zz[13] = (w << 1) | c;
}
@@ -932,8 +932,8 @@ public abstract class Nat224
}
long x_3 = x[xOff + 3] & M;
- long zz_5 = zz[zzOff + 5] & M;
- long zz_6 = zz[zzOff + 6] & M;
+ long zz_5 = (zz[zzOff + 5] & M) + (zz_4 >>> 32); zz_4 &= M;
+ long zz_6 = (zz[zzOff + 6] & M) + (zz_5 >>> 32); zz_5 &= M;
{
zz_3 += x_3 * x_0;
w = (int)zz_3;
@@ -947,8 +947,8 @@ public abstract class Nat224
}
long x_4 = x[xOff + 4] & M;
- long zz_7 = zz[zzOff + 7] & M;
- long zz_8 = zz[zzOff + 8] & M;
+ long zz_7 = (zz[zzOff + 7] & M) + (zz_6 >>> 32); zz_6 &= M;
+ long zz_8 = (zz[zzOff + 8] & M) + (zz_7 >>> 32); zz_7 &= M;
{
zz_4 += x_4 * x_0;
w = (int)zz_4;
@@ -964,8 +964,8 @@ public abstract class Nat224
}
long x_5 = x[xOff + 5] & M;
- long zz_9 = zz[zzOff + 9] & M;
- long zz_10 = zz[zzOff + 10] & M;
+ long zz_9 = (zz[zzOff + 9] & M) + (zz_8 >>> 32); zz_8 &= M;
+ long zz_10 = (zz[zzOff + 10] & M) + (zz_9 >>> 32); zz_9 &= M;
{
zz_5 += x_5 * x_0;
w = (int)zz_5;
@@ -983,8 +983,8 @@ public abstract class Nat224
}
long x_6 = x[xOff + 6] & M;
- long zz_11 = zz[zzOff + 11] & M;
- long zz_12 = zz[zzOff + 12] & M;
+ long zz_11 = (zz[zzOff + 11] & M) + (zz_10 >>> 32); zz_10 &= M;
+ long zz_12 = (zz[zzOff + 12] & M) + (zz_11 >>> 32); zz_11 &= M;
{
zz_6 += x_6 * x_0;
w = (int)zz_6;
@@ -1016,7 +1016,7 @@ public abstract class Nat224
w = (int)zz_12;
zz[zzOff + 12] = (w << 1) | c;
c = w >>> 31;
- w = zz[zzOff + 13] + (int)(zz_12 >> 32);
+ w = zz[zzOff + 13] + (int)(zz_12 >>> 32);
zz[zzOff + 13] = (w << 1) | c;
}