secp256k1GeSetGeZinv static method

void secp256k1GeSetGeZinv(
  1. Secp256k1Ge r,
  2. Secp256k1Ge a,
  3. Secp256k1Fe zi
)

Implementation

static void secp256k1GeSetGeZinv(
    Secp256k1Ge r, Secp256k1Ge a, Secp256k1Fe zi) {
  Secp256k1Fe zi2 = Secp256k1Fe();
  Secp256k1Fe zi3 = Secp256k1Fe();
  _cond(a.infinity == 0, "secp256k1GeSetGeZinv");

  secp256k1FeSqr(zi2, zi);
  secp256k1FeMul(zi3, zi2, zi);
  secp256k1FeMul(r.x, a.x, zi2);
  secp256k1FeMul(r.y, a.y, zi3);
  r.infinity = a.infinity;
}