When running on arm/ios, secp256k1_start() fails with assertion: #4 0x0002878a in secp256k1_num_mod_inverse at /path/secp256k1/impl/num_gmp.h:134 #5 0x00028516 in secp256k1_fe_inv_var at /path/secp256k1/impl/field.h:138 #6 0x0002691e in secp256k1_ge_set_gej at /path/secp256k1/impl/group.h:58 #7 0x00025f3e in secp256k1_ecmult_start at /path/secp256k1/impl/ecmult.h:89 #8 0x00025db0 in secp256k1_start at /path/secp256k1/secp256k1.c:22
Assertion fails in secp256k1_num_mod_inverse(): mp_size_t sn = NUM_LIMBS+1; mp_size_t gn = mpn_gcdext(g, r->data, &sn, u, m->limbs, v, m->limbs); assert(gn == 1); <==
Compiled with std=gnu99, USE_NUM_GMP, USE_FIELD_GMP, and USE_FIELD_INV_NUM.
What’s the significance of USE_FIELD_INV_NUM and Field settings? Any thoughts on compile settings for arm?