protected static void ImplSquare(uint[] x, uint[] zz) { Nat512.Square(x, zz); uint num = x[0x10]; zz[0x20] = Nat.MulWordAddTo(0x10, num << 1, x, 0, zz, 0x10) + (num * num); }
protected static void ImplSquare(uint[] x, uint[] zz) { Nat512.Square(x, zz); uint num = x[16]; zz[32] = Nat.MulWordAddTo(16, num << 1, x, 0, zz, 16) + num * num; }
protected static void ImplMultiply(uint[] x, uint[] y, uint[] zz) { Nat512.Mul(x, y, zz); uint a = x[0x10]; uint b = y[0x10]; zz[0x20] = Nat.Mul31BothAdd(0x10, a, y, b, x, zz, 0x10) + (a * b); }
protected static void ImplMultiply(uint[] x, uint[] y, uint[] zz) { Nat512.Mul(x, y, zz); uint num = x[16]; uint num2 = y[16]; zz[32] = Nat.Mul31BothAdd(16, num, y, num2, x, zz, 16) + num * num2; }
protected static void ImplSquare(uint[] x, uint[] zz) { Nat512.Square(x, zz); uint x16 = x[16]; zz[32] = Nat.MulWordAddTo(16, x16 << 1, x, 0, zz, 16) + (x16 * x16); }
protected static void ImplMultiply(uint[] x, uint[] y, uint[] zz) { Nat512.Mul(x, y, zz); uint x16 = x[16], y16 = y[16]; zz[32] = Nat.Mul31BothAdd(16, x16, y, y16, x, zz, 16) + (x16 * y16); }