-static void ginv(group *gg, mp **d, mp **x) {
- gctx_prime *g = (gctx_prime *)gg; mp *r = mpmont_reduce(&g->mm, *d, *x);
- r = mp_modinv(r, r, g->mm.m); *d = mpmont_mul(&g->mm, r, r, g->mm.r2);
+static void ginv(group *gg, ge_prime *d, ge_prime *x) {
+ gctx_prime *g = (gctx_prime *)gg;
+ mp *r = mpmont_reduce(&g->mm, d->x, x->x);
+ r = mp_modinv(r, r, g->mm.m); d->x = mpmont_mul(&g->mm, r, r, g->mm.r2);