geAdd static method

Implementation

static void geAdd(
  GroupElementP1P1 r,
  GroupElementP3 p,
  GroupElementCached q,
) {
  final FieldElement t0 = FieldElement();
  feAdd(r.x, p.y, p.x);
  feSub(r.y, p.y, p.x);
  feMul(r.z, r.x, q.yPlusX);
  feMul(r.y, r.y, q.yMinusX);
  feMul(r.t, q.t2d, p.t);
  feMul(r.x, p.z, q.z);
  feAdd(t0, r.x, r.x);
  feSub(r.x, r.z, r.y);
  feAdd(r.y, r.z, r.y);
  feAdd(r.z, t0, r.t);
  feSub(r.t, t0, r.t);
}