])\r
\r
static modL (r: Uint8Array, x: BigInt64Array): void {\r
- let c: bigint, v: bigint\r
+ let c: bigint, t: bigint, v: bigint\r
for (let i = 63; i >= 32; --i) {\r
c = 0n\r
for (let j = i - 32, k = i - 12; j < k; j++) {\r
- x[j] += c - 16n * x[i] * this.L[j - (i - 32)]\r
- c = (x[j] + 128n) / 256n\r
- x[j] -= c * 256n\r
+ t = 16n * x[i] * this.L[j - (i - 32)]\r
+ v = x[j] + c - t\r
+ c = (v + 128n) / 256n\r
+ x[j] = v - (c * 256n)\r
}\r
x[i - 12] += c\r
x[i] = 0n\r