Lines Matching refs:X1
455 void double_jacobian_default(uECC_word_t * X1, uECC_word_t * Y1, in double_jacobian_default() argument
468 uECC_vli_modMult_fast(t5, X1, t4, curve); /* t5 = x1*y1^2 = A */ in double_jacobian_default()
473 uECC_vli_modAdd(X1, X1, Z1, curve->p, num_words); /* t1 = x1 + z1^2 */ in double_jacobian_default()
475 uECC_vli_modSub(Z1, X1, Z1, curve->p, num_words); /* t3 = x1 - z1^2 */ in double_jacobian_default()
476 uECC_vli_modMult_fast(X1, X1, Z1, curve); /* t1 = x1^2 - z1^4 */ in double_jacobian_default()
478 uECC_vli_modAdd(Z1, X1, X1, curve->p, num_words); /* t3 = 2*(x1^2 - z1^4) */ in double_jacobian_default()
479 uECC_vli_modAdd(X1, X1, Z1, curve->p, num_words); /* t1 = 3*(x1^2 - z1^4) */ in double_jacobian_default()
480 if (uECC_vli_testBit(X1, 0)) { in double_jacobian_default()
481 uECC_word_t l_carry = uECC_vli_add(X1, X1, curve->p, num_words); in double_jacobian_default()
482 uECC_vli_rshift1(X1, num_words); in double_jacobian_default()
483 X1[num_words - 1] |= l_carry << (uECC_WORD_BITS - 1); in double_jacobian_default()
485 uECC_vli_rshift1(X1, num_words); in double_jacobian_default()
489 uECC_vli_modSquare_fast(Z1, X1, curve); /* t3 = B^2 */ in double_jacobian_default()
493 uECC_vli_modMult_fast(X1, X1, t5, curve); /* t1 = B * (A - x3) */ in double_jacobian_default()
495 uECC_vli_modSub(t4, X1, t4, curve->p, num_words); in double_jacobian_default()
497 uECC_vli_set(X1, Z1, num_words); in double_jacobian_default()
627 void apply_z(uECC_word_t * X1, uECC_word_t * Y1, const uECC_word_t * const Z, in apply_z() argument
633 uECC_vli_modMult_fast(X1, X1, t1, curve); /* x1 * z^2 */ in apply_z()
639 static void XYcZ_initial_double(uECC_word_t * X1, uECC_word_t * Y1, in XYcZ_initial_double() argument
653 uECC_vli_set(X2, X1, num_words); in XYcZ_initial_double()
656 apply_z(X1, Y1, z, curve); in XYcZ_initial_double()
657 curve->double_jacobian(X1, Y1, z, curve); in XYcZ_initial_double()
661 void XYcZ_add(uECC_word_t * X1, uECC_word_t * Y1, in XYcZ_add() argument
669 uECC_vli_modSub(t5, X2, X1, curve->p, num_words); /* t5 = x2 - x1 */ in XYcZ_add()
671 uECC_vli_modMult_fast(X1, X1, t5, curve); /* t1 = x1*A = B */ in XYcZ_add()
676 uECC_vli_modSub(t5, t5, X1, curve->p, num_words); /* t5 = D - B */ in XYcZ_add()
678 uECC_vli_modSub(X2, X2, X1, curve->p, num_words); /* t3 = C - B */ in XYcZ_add()
680 uECC_vli_modSub(X2, X1, t5, curve->p, num_words); /* t3 = B - x3 */ in XYcZ_add()
691 static void XYcZ_addC(uECC_word_t * X1, uECC_word_t * Y1, in XYcZ_addC() argument
701 uECC_vli_modSub(t5, X2, X1, curve->p, num_words); /* t5 = x2 - x1 */ in XYcZ_addC()
703 uECC_vli_modMult_fast(X1, X1, t5, curve); /* t1 = x1*A = B */ in XYcZ_addC()
708 uECC_vli_modSub(t6, X2, X1, curve->p, num_words); /* t6 = C - B */ in XYcZ_addC()
710 uECC_vli_modAdd(t6, X1, X2, curve->p, num_words); /* t6 = B + C */ in XYcZ_addC()
714 uECC_vli_modSub(t7, X1, X2, curve->p, num_words); /* t7 = B - x3 */ in XYcZ_addC()
721 uECC_vli_modSub(t6, t7, X1, curve->p, num_words); /* t6 = x3' - B */ in XYcZ_addC()
726 uECC_vli_set(X1, t7, num_words); in XYcZ_addC()