Home | History | Annotate | Download | only in ec

Lines Matching full:limb

43  * 2^336*b_6 using 128-bit coefficients called 'widelimbs'. A 4-limb
52 typedef uint64_t limb;
55 typedef limb felem[4];
286 static const limb two58p2 = (((limb)1) << 58) + (((limb)1) << 2);
287 static const limb two58m2 = (((limb)1) << 58) - (((limb)1) << 2);
288 static const limb two58m42m2 =
289 (((limb)1) << 58) - (((limb)1) << 42) - (((limb)1) << 2);
301 static const limb two58p2 = (((limb)1) << 58) + (((limb)1) << 2);
302 static const limb two58m2 = (((limb)1) << 58) - (((limb)1) << 2);
303 static const limb two58m42m2 =
304 (((limb)1) << 58) - (((limb)1) << 42) - (((limb)1) << 2);
367 static void felem_scalar(felem out, const limb scalar) {
388 limb tmp0, tmp1, tmp2;
494 static const int64_t two56 = ((limb)1) << 56;
543 static limb felem_is_zero(const felem in) {
544 limb zero = in[0] | in[1] | in[2] | in[3];
547 limb two224m96p1 = (in[0] ^ 1) | (in[1] ^ 0x00ffff0000000000) |
551 limb two225m97p2 = (in[0] ^ 2) | (in[1] ^ 0x00fffe0000000000) |
558 static limb felem_is_zero_int(const felem in) {
559 return (int)(felem_is_zero(in) & ((limb)1));
646 static void copy_conditional(felem out, const felem in, limb icopy) {
649 const limb copy = -icopy;
651 const limb tmp = copy & (in[i] ^ out[i]);
758 limb z1_is_zero, z2_is_zero, x_equal, y_equal;
907 limb *outlimbs = &out[0][0];
911 const limb *inlimbs = &pre_comp[i][0][0];