Lines Matching refs:left
242 int vli_cmp(const u64 *left, const u64 *right, unsigned int ndigits) in vli_cmp() argument
247 if (left[i] > right[i]) in vli_cmp()
249 else if (left[i] < right[i]) in vli_cmp()
292 static u64 vli_add(u64 *result, const u64 *left, const u64 *right, in vli_add() argument
301 sum = left[i] + right[i] + carry; in vli_add()
302 if (sum != left[i]) in vli_add()
303 carry = (sum < left[i]); in vli_add()
312 static u64 vli_uadd(u64 *result, const u64 *left, u64 right, in vli_uadd() argument
321 sum = left[i] + carry; in vli_uadd()
322 if (sum != left[i]) in vli_uadd()
323 carry = (sum < left[i]); in vli_uadd()
334 u64 vli_sub(u64 *result, const u64 *left, const u64 *right, in vli_sub() argument
343 diff = left[i] - right[i] - borrow; in vli_sub()
344 if (diff != left[i]) in vli_sub()
345 borrow = (diff > left[i]); in vli_sub()
355 static u64 vli_usub(u64 *result, const u64 *left, u64 right, in vli_usub() argument
364 diff = left[i] - borrow; in vli_usub()
365 if (diff != left[i]) in vli_usub()
366 borrow = (diff > left[i]); in vli_usub()
374 static uint128_t mul_64_64(u64 left, u64 right) in mul_64_64() argument
378 unsigned __int128 m = (unsigned __int128)left * right; in mul_64_64()
383 u64 a0 = left & 0xffffffffull; in mul_64_64()
384 u64 a1 = left >> 32; in mul_64_64()
415 static void vli_mult(u64 *result, const u64 *left, const u64 *right, in vli_mult() argument
436 product = mul_64_64(left[i], right[k - i]); in vli_mult()
452 static void vli_umult(u64 *result, const u64 *left, u32 right, in vli_umult() argument
461 product = mul_64_64(left[k], right); in vli_umult()
473 static void vli_square(u64 *result, const u64 *left, unsigned int ndigits) in vli_square() argument
490 product = mul_64_64(left[i], left[k - i]); in vli_square()
515 static void vli_mod_add(u64 *result, const u64 *left, const u64 *right, in vli_mod_add() argument
520 carry = vli_add(result, left, right, ndigits); in vli_mod_add()
532 static void vli_mod_sub(u64 *result, const u64 *left, const u64 *right, in vli_mod_sub() argument
535 u64 borrow = vli_sub(result, left, right, ndigits); in vli_mod_sub()
1004 void vli_mod_mult_slow(u64 *result, const u64 *left, const u64 *right, in vli_mod_mult_slow() argument
1009 vli_mult(product, left, right, ndigits); in vli_mod_mult_slow()
1015 static void vli_mod_mult_fast(u64 *result, const u64 *left, const u64 *right, in vli_mod_mult_fast() argument
1020 vli_mult(product, left, right, curve->g.ndigits); in vli_mod_mult_fast()
1025 static void vli_mod_square_fast(u64 *result, const u64 *left, in vli_mod_square_fast() argument
1030 vli_square(product, left, curve->g.ndigits); in vli_mod_square_fast()