Home | History | Annotate | Download | only in ec

Lines Matching refs:felem

44  * representation is an 'felem'; a 7-widelimb representation is a 'widefelem'.
46 * reduce the representations: we ensure that inputs to each felem
49 * partially reduced to obtain an felem satisfying a_i < 2^57. We only reduce
55 typedef limb felem[4];
92 static const felem g_pre_comp[2][16][3] = {
187 static void bin28_to_felem(felem out, const u8 in[28]) {
194 static void felem_to_bin28(u8 out[28], const felem in) {
211 static int BN_to_felem(felem out, const BIGNUM *bn) {
230 static BIGNUM *felem_to_BN(BIGNUM *out, const felem in) {
242 static void felem_assign(felem out, const felem in) {
250 static void felem_sum(felem out, const felem in) {
259 static void felem_neg(felem out, const felem in) {
274 static void felem_diff(felem out, const felem in) {
321 static void felem_diff_128_64(widefelem out, const felem in) {
341 static void felem_scalar(felem out, const limb scalar) {
361 static void felem_square(widefelem out, const felem in) {
376 static void felem_mul(widefelem out, const felem in1, const felem in2) {
392 static void felem_reduce(felem out, const widefelem in) {
455 static void felem_contract(felem out, const felem in) {
505 static limb felem_is_zero(const felem in) {
522 static void felem_inv(felem out, const felem in) {
523 felem ftmp, ftmp2, ftmp3, ftmp4;
603 static void copy_conditional(felem out, const felem in, limb icopy) {
625 static void point_double(felem x_out, felem y_out, felem z_out,
626 const felem x_in, const felem y_in, const felem z_in) {
628 felem delta, gamma, beta, alpha, ftmp, ftmp2;
709 static void point_add(felem x3, felem y3, felem z3, const felem x1,
710 const felem y1, const felem z1, const int mixed,
711 const felem x2, const felem y2, const felem z2) {
712 felem ftmp, ftmp2, ftmp3, ftmp4, ftmp5, x_out, y_out, z_out;
861 const felem pre_comp[/*size*/][3], felem out[3]) {
863 OPENSSL_memset(outlimbs, 0, 3 * sizeof(felem));
892 static void batch_mul(felem x_out, felem y_out, felem z_out, const u8 *p_scalar,
893 const u8 *g_scalar, const felem p_pre_comp[17][3]) {
894 felem nq[3], tmp[4];
899 OPENSSL_memset(nq, 0, 3 * sizeof(felem));
926 OPENSSL_memcpy(nq, tmp, 3 * sizeof(felem));
960 OPENSSL_memcpy(nq, tmp, 3 * sizeof(felem));
981 felem z1, z2, x_in, y_in, x_out, y_out;
1026 felem p_pre_comp[17][3];
1028 felem x_in, y_in, z_in, x_out, y_out, z_out;
1110 g_scalar != NULL ? g_secret : NULL, (const felem(*)[3])p_pre_comp);