Lines Matching refs:curve_prime

679 			      const u64 *curve_prime, u64 *tmp)
698 while (carry || vli_cmp(curve_prime, result, ndigits) != 1)
699 carry -= vli_sub(result, result, curve_prime, ndigits);
702 /* Computes result = product % curve_prime
706 const u64 *curve_prime, u64 *tmp)
773 carry += vli_add(result, result, curve_prime, ndigits);
776 while (carry || vli_cmp(curve_prime, result, ndigits) != 1)
777 carry -= vli_sub(result, result, curve_prime, ndigits);
785 /* Computes result = product % curve_prime
789 const u64 *curve_prime, u64 *tmp)
881 carry += vli_add(result, result, curve_prime, ndigits);
884 while (carry || vli_cmp(curve_prime, result, ndigits) != 1)
885 carry -= vli_sub(result, result, curve_prime, ndigits);
894 /* Computes result = product % curve_prime for different curve_primes.
903 const u64 *curve_prime = curve->p;
909 if (curve_prime[ndigits - 1] == -1ull) {
910 vli_mmod_special(result, product, curve_prime,
913 } else if (curve_prime[ndigits - 1] == 1ull << 63 &&
914 curve_prime[ndigits - 2] == 0) {
915 vli_mmod_special2(result, product, curve_prime,
919 vli_mmod_barrett(result, product, curve_prime, ndigits);
925 vli_mmod_fast_192(result, product, curve_prime, tmp);
928 vli_mmod_fast_256(result, product, curve_prime, tmp);
931 vli_mmod_fast_384(result, product, curve_prime, tmp);
954 /* Computes result = (left * right) % curve_prime. */
964 /* Computes result = left^2 % curve_prime. */
1074 const u64 *curve_prime = curve->p;
1092 vli_mod_add(x1, x1, z1, curve_prime, ndigits);
1094 vli_mod_add(z1, z1, z1, curve_prime, ndigits);
1096 vli_mod_sub(z1, x1, z1, curve_prime, ndigits);
1101 vli_mod_add(z1, x1, x1, curve_prime, ndigits);
1103 vli_mod_add(x1, x1, z1, curve_prime, ndigits);
1105 u64 carry = vli_add(x1, x1, curve_prime, ndigits);
1117 vli_mod_sub(z1, z1, t5, curve_prime, ndigits);
1119 vli_mod_sub(z1, z1, t5, curve_prime, ndigits);
1121 vli_mod_sub(t5, t5, z1, curve_prime, ndigits);
1125 vli_mod_sub(t4, x1, t4, curve_prime, ndigits);
1175 const u64 *curve_prime = curve->p;
1179 vli_mod_sub(t5, x2, x1, curve_prime, ndigits);
1187 vli_mod_sub(y2, y2, y1, curve_prime, ndigits);
1192 vli_mod_sub(t5, t5, x1, curve_prime, ndigits);
1194 vli_mod_sub(t5, t5, x2, curve_prime, ndigits);
1196 vli_mod_sub(x2, x2, x1, curve_prime, ndigits);
1200 vli_mod_sub(x2, x1, t5, curve_prime, ndigits);
1204 vli_mod_sub(y2, y2, y1, curve_prime, ndigits);
1220 const u64 *curve_prime = curve->p;
1224 vli_mod_sub(t5, x2, x1, curve_prime, ndigits);
1232 vli_mod_add(t5, y2, y1, curve_prime, ndigits);
1234 vli_mod_sub(y2, y2, y1, curve_prime, ndigits);
1237 vli_mod_sub(t6, x2, x1, curve_prime, ndigits);
1241 vli_mod_add(t6, x1, x2, curve_prime, ndigits);
1245 vli_mod_sub(x2, x2, t6, curve_prime, ndigits);
1248 vli_mod_sub(t7, x1, x2, curve_prime, ndigits);
1252 vli_mod_sub(y2, y2, y1, curve_prime, ndigits);
1257 vli_mod_sub(t7, t7, t6, curve_prime, ndigits);
1259 vli_mod_sub(t6, t7, x1, curve_prime, ndigits);
1263 vli_mod_sub(y1, t6, y1, curve_prime, ndigits);
1278 u64 *curve_prime = curve->p;
1304 vli_mod_sub(z, rx[1], rx[0], curve_prime, ndigits);
1311 vli_mod_inv(z, z, curve_prime, point->ndigits);