diff options
42 files changed, 1218 insertions, 0 deletions
diff --git a/src/Specific/solinas32_2e321m9/feadd.c b/src/Specific/solinas32_2e321m9/feadd.c new file mode 100644 index 000000000..18b150e21 --- /dev/null +++ b/src/Specific/solinas32_2e321m9/feadd.c @@ -0,0 +1,51 @@ +static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) { + { const uint32_t x32 = in1[15]; + { const uint32_t x33 = in1[14]; + { const uint32_t x31 = in1[13]; + { const uint32_t x29 = in1[12]; + { const uint32_t x27 = in1[11]; + { const uint32_t x25 = in1[10]; + { const uint32_t x23 = in1[9]; + { const uint32_t x21 = in1[8]; + { const uint32_t x19 = in1[7]; + { const uint32_t x17 = in1[6]; + { const uint32_t x15 = in1[5]; + { const uint32_t x13 = in1[4]; + { const uint32_t x11 = in1[3]; + { const uint32_t x9 = in1[2]; + { const uint32_t x7 = in1[1]; + { const uint32_t x5 = in1[0]; + { const uint32_t x62 = in2[15]; + { const uint32_t x63 = in2[14]; + { const uint32_t x61 = in2[13]; + { const uint32_t x59 = in2[12]; + { const uint32_t x57 = in2[11]; + { const uint32_t x55 = in2[10]; + { const uint32_t x53 = in2[9]; + { const uint32_t x51 = in2[8]; + { const uint32_t x49 = in2[7]; + { const uint32_t x47 = in2[6]; + { const uint32_t x45 = in2[5]; + { const uint32_t x43 = in2[4]; + { const uint32_t x41 = in2[3]; + { const uint32_t x39 = in2[2]; + { const uint32_t x37 = in2[1]; + { const uint32_t x35 = in2[0]; + out[0] = (x5 + x35); + out[1] = (x7 + x37); + out[2] = (x9 + x39); + out[3] = (x11 + x41); + out[4] = (x13 + x43); + out[5] = (x15 + x45); + out[6] = (x17 + x47); + out[7] = (x19 + x49); + out[8] = (x21 + x51); + out[9] = (x23 + x53); + out[10] = (x25 + x55); + out[11] = (x27 + x57); + out[12] = (x29 + x59); + out[13] = (x31 + x61); + out[14] = (x33 + x63); + out[15] = (x32 + x62); + }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e321m9/feaddDisplay.log b/src/Specific/solinas32_2e321m9/feaddDisplay.log new file mode 100644 index 000000000..130c31964 --- /dev/null +++ b/src/Specific/solinas32_2e321m9/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core, + ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35))) +(x, x0)%core + : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t) diff --git a/src/Specific/solinas32_2e321m9/fesub.c b/src/Specific/solinas32_2e321m9/fesub.c new file mode 100644 index 000000000..a9a76e05d --- /dev/null +++ b/src/Specific/solinas32_2e321m9/fesub.c @@ -0,0 +1,51 @@ +static void fesub(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) { + { const uint32_t x32 = in1[15]; + { const uint32_t x33 = in1[14]; + { const uint32_t x31 = in1[13]; + { const uint32_t x29 = in1[12]; + { const uint32_t x27 = in1[11]; + { const uint32_t x25 = in1[10]; + { const uint32_t x23 = in1[9]; + { const uint32_t x21 = in1[8]; + { const uint32_t x19 = in1[7]; + { const uint32_t x17 = in1[6]; + { const uint32_t x15 = in1[5]; + { const uint32_t x13 = in1[4]; + { const uint32_t x11 = in1[3]; + { const uint32_t x9 = in1[2]; + { const uint32_t x7 = in1[1]; + { const uint32_t x5 = in1[0]; + { const uint32_t x62 = in2[15]; + { const uint32_t x63 = in2[14]; + { const uint32_t x61 = in2[13]; + { const uint32_t x59 = in2[12]; + { const uint32_t x57 = in2[11]; + { const uint32_t x55 = in2[10]; + { const uint32_t x53 = in2[9]; + { const uint32_t x51 = in2[8]; + { const uint32_t x49 = in2[7]; + { const uint32_t x47 = in2[6]; + { const uint32_t x45 = in2[5]; + { const uint32_t x43 = in2[4]; + { const uint32_t x41 = in2[3]; + { const uint32_t x39 = in2[2]; + { const uint32_t x37 = in2[1]; + { const uint32_t x35 = in2[0]; + out[0] = ((Const 4194286 + x5) - x35); + out[1] = ((0x1ffffe + x7) - x37); + out[2] = ((0x1ffffe + x9) - x39); + out[3] = ((0x1ffffe + x11) - x41); + out[4] = ((0x1ffffe + x13) - x43); + out[5] = ((0x1ffffe + x15) - x45); + out[6] = ((0x1ffffe + x17) - x47); + out[7] = ((0x1ffffe + x19) - x49); + out[8] = ((0x1ffffe + x21) - x51); + out[9] = ((0x1ffffe + x23) - x53); + out[10] = ((0x1ffffe + x25) - x55); + out[11] = ((0x1ffffe + x27) - x57); + out[12] = ((0x1ffffe + x29) - x59); + out[13] = ((0x1ffffe + x31) - x61); + out[14] = ((0x1ffffe + x33) - x63); + out[15] = ((0x1ffffe + x32) - x62); + }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e321m9/fesubDisplay.log b/src/Specific/solinas32_2e321m9/fesubDisplay.log new file mode 100644 index 000000000..9ceead157 --- /dev/null +++ b/src/Specific/solinas32_2e321m9/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core, + (((0x1ffffe + x32) - x62), ((0x1ffffe + x33) - x63), ((0x1ffffe + x31) - x61), ((0x1ffffe + x29) - x59), ((0x1ffffe + x27) - x57), ((0x1ffffe + x25) - x55), ((0x1ffffe + x23) - x53), ((0x1ffffe + x21) - x51), ((0x1ffffe + x19) - x49), ((0x1ffffe + x17) - x47), ((0x1ffffe + x15) - x45), ((0x1ffffe + x13) - x43), ((0x1ffffe + x11) - x41), ((0x1ffffe + x9) - x39), ((0x1ffffe + x7) - x37), ((Const 4194286 + x5) - x35))) +(x, x0)%core + : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t) diff --git a/src/Specific/solinas32_2e369m25/feadd.c b/src/Specific/solinas32_2e369m25/feadd.c new file mode 100644 index 000000000..18b150e21 --- /dev/null +++ b/src/Specific/solinas32_2e369m25/feadd.c @@ -0,0 +1,51 @@ +static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) { + { const uint32_t x32 = in1[15]; + { const uint32_t x33 = in1[14]; + { const uint32_t x31 = in1[13]; + { const uint32_t x29 = in1[12]; + { const uint32_t x27 = in1[11]; + { const uint32_t x25 = in1[10]; + { const uint32_t x23 = in1[9]; + { const uint32_t x21 = in1[8]; + { const uint32_t x19 = in1[7]; + { const uint32_t x17 = in1[6]; + { const uint32_t x15 = in1[5]; + { const uint32_t x13 = in1[4]; + { const uint32_t x11 = in1[3]; + { const uint32_t x9 = in1[2]; + { const uint32_t x7 = in1[1]; + { const uint32_t x5 = in1[0]; + { const uint32_t x62 = in2[15]; + { const uint32_t x63 = in2[14]; + { const uint32_t x61 = in2[13]; + { const uint32_t x59 = in2[12]; + { const uint32_t x57 = in2[11]; + { const uint32_t x55 = in2[10]; + { const uint32_t x53 = in2[9]; + { const uint32_t x51 = in2[8]; + { const uint32_t x49 = in2[7]; + { const uint32_t x47 = in2[6]; + { const uint32_t x45 = in2[5]; + { const uint32_t x43 = in2[4]; + { const uint32_t x41 = in2[3]; + { const uint32_t x39 = in2[2]; + { const uint32_t x37 = in2[1]; + { const uint32_t x35 = in2[0]; + out[0] = (x5 + x35); + out[1] = (x7 + x37); + out[2] = (x9 + x39); + out[3] = (x11 + x41); + out[4] = (x13 + x43); + out[5] = (x15 + x45); + out[6] = (x17 + x47); + out[7] = (x19 + x49); + out[8] = (x21 + x51); + out[9] = (x23 + x53); + out[10] = (x25 + x55); + out[11] = (x27 + x57); + out[12] = (x29 + x59); + out[13] = (x31 + x61); + out[14] = (x33 + x63); + out[15] = (x32 + x62); + }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e369m25/feaddDisplay.log b/src/Specific/solinas32_2e369m25/feaddDisplay.log new file mode 100644 index 000000000..130c31964 --- /dev/null +++ b/src/Specific/solinas32_2e369m25/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core, + ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35))) +(x, x0)%core + : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t) diff --git a/src/Specific/solinas32_2e369m25/fesub.c b/src/Specific/solinas32_2e369m25/fesub.c new file mode 100644 index 000000000..b307b05e9 --- /dev/null +++ b/src/Specific/solinas32_2e369m25/fesub.c @@ -0,0 +1,51 @@ +static void fesub(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) { + { const uint32_t x32 = in1[15]; + { const uint32_t x33 = in1[14]; + { const uint32_t x31 = in1[13]; + { const uint32_t x29 = in1[12]; + { const uint32_t x27 = in1[11]; + { const uint32_t x25 = in1[10]; + { const uint32_t x23 = in1[9]; + { const uint32_t x21 = in1[8]; + { const uint32_t x19 = in1[7]; + { const uint32_t x17 = in1[6]; + { const uint32_t x15 = in1[5]; + { const uint32_t x13 = in1[4]; + { const uint32_t x11 = in1[3]; + { const uint32_t x9 = in1[2]; + { const uint32_t x7 = in1[1]; + { const uint32_t x5 = in1[0]; + { const uint32_t x62 = in2[15]; + { const uint32_t x63 = in2[14]; + { const uint32_t x61 = in2[13]; + { const uint32_t x59 = in2[12]; + { const uint32_t x57 = in2[11]; + { const uint32_t x55 = in2[10]; + { const uint32_t x53 = in2[9]; + { const uint32_t x51 = in2[8]; + { const uint32_t x49 = in2[7]; + { const uint32_t x47 = in2[6]; + { const uint32_t x45 = in2[5]; + { const uint32_t x43 = in2[4]; + { const uint32_t x41 = in2[3]; + { const uint32_t x39 = in2[2]; + { const uint32_t x37 = in2[1]; + { const uint32_t x35 = in2[0]; + out[0] = ((Const 33554382 + x5) - x35); + out[1] = ((0xfffffe + x7) - x37); + out[2] = ((0xfffffe + x9) - x39); + out[3] = ((0xfffffe + x11) - x41); + out[4] = ((0xfffffe + x13) - x43); + out[5] = ((0xfffffe + x15) - x45); + out[6] = ((0xfffffe + x17) - x47); + out[7] = ((0xfffffe + x19) - x49); + out[8] = ((0xfffffe + x21) - x51); + out[9] = ((0xfffffe + x23) - x53); + out[10] = ((0xfffffe + x25) - x55); + out[11] = ((0xfffffe + x27) - x57); + out[12] = ((0xfffffe + x29) - x59); + out[13] = ((0xfffffe + x31) - x61); + out[14] = ((0xfffffe + x33) - x63); + out[15] = ((0xfffffe + x32) - x62); + }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e369m25/fesubDisplay.log b/src/Specific/solinas32_2e369m25/fesubDisplay.log new file mode 100644 index 000000000..b37924332 --- /dev/null +++ b/src/Specific/solinas32_2e369m25/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core, + (((0xfffffe + x32) - x62), ((0xfffffe + x33) - x63), ((0xfffffe + x31) - x61), ((0xfffffe + x29) - x59), ((0xfffffe + x27) - x57), ((0xfffffe + x25) - x55), ((0xfffffe + x23) - x53), ((0xfffffe + x21) - x51), ((0xfffffe + x19) - x49), ((0xfffffe + x17) - x47), ((0xfffffe + x15) - x45), ((0xfffffe + x13) - x43), ((0xfffffe + x11) - x41), ((0xfffffe + x9) - x39), ((0xfffffe + x7) - x37), ((Const 33554382 + x5) - x35))) +(x, x0)%core + : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t) diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1/feadd.c b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1/feadd.c new file mode 100644 index 000000000..18b150e21 --- /dev/null +++ b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1/feadd.c @@ -0,0 +1,51 @@ +static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) { + { const uint32_t x32 = in1[15]; + { const uint32_t x33 = in1[14]; + { const uint32_t x31 = in1[13]; + { const uint32_t x29 = in1[12]; + { const uint32_t x27 = in1[11]; + { const uint32_t x25 = in1[10]; + { const uint32_t x23 = in1[9]; + { const uint32_t x21 = in1[8]; + { const uint32_t x19 = in1[7]; + { const uint32_t x17 = in1[6]; + { const uint32_t x15 = in1[5]; + { const uint32_t x13 = in1[4]; + { const uint32_t x11 = in1[3]; + { const uint32_t x9 = in1[2]; + { const uint32_t x7 = in1[1]; + { const uint32_t x5 = in1[0]; + { const uint32_t x62 = in2[15]; + { const uint32_t x63 = in2[14]; + { const uint32_t x61 = in2[13]; + { const uint32_t x59 = in2[12]; + { const uint32_t x57 = in2[11]; + { const uint32_t x55 = in2[10]; + { const uint32_t x53 = in2[9]; + { const uint32_t x51 = in2[8]; + { const uint32_t x49 = in2[7]; + { const uint32_t x47 = in2[6]; + { const uint32_t x45 = in2[5]; + { const uint32_t x43 = in2[4]; + { const uint32_t x41 = in2[3]; + { const uint32_t x39 = in2[2]; + { const uint32_t x37 = in2[1]; + { const uint32_t x35 = in2[0]; + out[0] = (x5 + x35); + out[1] = (x7 + x37); + out[2] = (x9 + x39); + out[3] = (x11 + x41); + out[4] = (x13 + x43); + out[5] = (x15 + x45); + out[6] = (x17 + x47); + out[7] = (x19 + x49); + out[8] = (x21 + x51); + out[9] = (x23 + x53); + out[10] = (x25 + x55); + out[11] = (x27 + x57); + out[12] = (x29 + x59); + out[13] = (x31 + x61); + out[14] = (x33 + x63); + out[15] = (x32 + x62); + }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1/feaddDisplay.log b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1/feaddDisplay.log new file mode 100644 index 000000000..130c31964 --- /dev/null +++ b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core, + ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35))) +(x, x0)%core + : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t) diff --git a/src/Specific/solinas32_2e384m5x2e368m1/feadd.c b/src/Specific/solinas32_2e384m5x2e368m1/feadd.c new file mode 100644 index 000000000..18b150e21 --- /dev/null +++ b/src/Specific/solinas32_2e384m5x2e368m1/feadd.c @@ -0,0 +1,51 @@ +static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) { + { const uint32_t x32 = in1[15]; + { const uint32_t x33 = in1[14]; + { const uint32_t x31 = in1[13]; + { const uint32_t x29 = in1[12]; + { const uint32_t x27 = in1[11]; + { const uint32_t x25 = in1[10]; + { const uint32_t x23 = in1[9]; + { const uint32_t x21 = in1[8]; + { const uint32_t x19 = in1[7]; + { const uint32_t x17 = in1[6]; + { const uint32_t x15 = in1[5]; + { const uint32_t x13 = in1[4]; + { const uint32_t x11 = in1[3]; + { const uint32_t x9 = in1[2]; + { const uint32_t x7 = in1[1]; + { const uint32_t x5 = in1[0]; + { const uint32_t x62 = in2[15]; + { const uint32_t x63 = in2[14]; + { const uint32_t x61 = in2[13]; + { const uint32_t x59 = in2[12]; + { const uint32_t x57 = in2[11]; + { const uint32_t x55 = in2[10]; + { const uint32_t x53 = in2[9]; + { const uint32_t x51 = in2[8]; + { const uint32_t x49 = in2[7]; + { const uint32_t x47 = in2[6]; + { const uint32_t x45 = in2[5]; + { const uint32_t x43 = in2[4]; + { const uint32_t x41 = in2[3]; + { const uint32_t x39 = in2[2]; + { const uint32_t x37 = in2[1]; + { const uint32_t x35 = in2[0]; + out[0] = (x5 + x35); + out[1] = (x7 + x37); + out[2] = (x9 + x39); + out[3] = (x11 + x41); + out[4] = (x13 + x43); + out[5] = (x15 + x45); + out[6] = (x17 + x47); + out[7] = (x19 + x49); + out[8] = (x21 + x51); + out[9] = (x23 + x53); + out[10] = (x25 + x55); + out[11] = (x27 + x57); + out[12] = (x29 + x59); + out[13] = (x31 + x61); + out[14] = (x33 + x63); + out[15] = (x32 + x62); + }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e384m5x2e368m1/feaddDisplay.log b/src/Specific/solinas32_2e384m5x2e368m1/feaddDisplay.log new file mode 100644 index 000000000..130c31964 --- /dev/null +++ b/src/Specific/solinas32_2e384m5x2e368m1/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core, + ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35))) +(x, x0)%core + : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t) diff --git a/src/Specific/solinas32_2e384m5x2e368m1/fesub.c b/src/Specific/solinas32_2e384m5x2e368m1/fesub.c new file mode 100644 index 000000000..747a7d9b8 --- /dev/null +++ b/src/Specific/solinas32_2e384m5x2e368m1/fesub.c @@ -0,0 +1,51 @@ +static void fesub(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) { + { const uint32_t x32 = in1[15]; + { const uint32_t x33 = in1[14]; + { const uint32_t x31 = in1[13]; + { const uint32_t x29 = in1[12]; + { const uint32_t x27 = in1[11]; + { const uint32_t x25 = in1[10]; + { const uint32_t x23 = in1[9]; + { const uint32_t x21 = in1[8]; + { const uint32_t x19 = in1[7]; + { const uint32_t x17 = in1[6]; + { const uint32_t x15 = in1[5]; + { const uint32_t x13 = in1[4]; + { const uint32_t x11 = in1[3]; + { const uint32_t x9 = in1[2]; + { const uint32_t x7 = in1[1]; + { const uint32_t x5 = in1[0]; + { const uint32_t x62 = in2[15]; + { const uint32_t x63 = in2[14]; + { const uint32_t x61 = in2[13]; + { const uint32_t x59 = in2[12]; + { const uint32_t x57 = in2[11]; + { const uint32_t x55 = in2[10]; + { const uint32_t x53 = in2[9]; + { const uint32_t x51 = in2[8]; + { const uint32_t x49 = in2[7]; + { const uint32_t x47 = in2[6]; + { const uint32_t x45 = in2[5]; + { const uint32_t x43 = in2[4]; + { const uint32_t x41 = in2[3]; + { const uint32_t x39 = in2[2]; + { const uint32_t x37 = in2[1]; + { const uint32_t x35 = in2[0]; + out[0] = ((0x1fffffe + x5) - x35); + out[1] = ((0x1fffffe + x7) - x37); + out[2] = ((0x1fffffe + x9) - x39); + out[3] = ((0x1fffffe + x11) - x41); + out[4] = ((0x1fffffe + x13) - x43); + out[5] = ((0x1fffffe + x15) - x45); + out[6] = ((0x1fffffe + x17) - x47); + out[7] = ((0x1fffffe + x19) - x49); + out[8] = ((0x1fffffe + x21) - x51); + out[9] = ((0x1fffffe + x23) - x53); + out[10] = ((0x1fffffe + x25) - x55); + out[11] = ((0x1fffffe + x27) - x57); + out[12] = ((0x1fffffe + x29) - x59); + out[13] = ((0x1fffffe + x31) - x61); + out[14] = ((0x1fffffe + x33) - x63); + out[15] = ((Const 33551870 + x32) - x62); + }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e384m5x2e368m1/fesubDisplay.log b/src/Specific/solinas32_2e384m5x2e368m1/fesubDisplay.log new file mode 100644 index 000000000..00c1d73b3 --- /dev/null +++ b/src/Specific/solinas32_2e384m5x2e368m1/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core, + (((Const 33551870 + x32) - x62), ((0x1fffffe + x33) - x63), ((0x1fffffe + x31) - x61), ((0x1fffffe + x29) - x59), ((0x1fffffe + x27) - x57), ((0x1fffffe + x25) - x55), ((0x1fffffe + x23) - x53), ((0x1fffffe + x21) - x51), ((0x1fffffe + x19) - x49), ((0x1fffffe + x17) - x47), ((0x1fffffe + x15) - x45), ((0x1fffffe + x13) - x43), ((0x1fffffe + x11) - x41), ((0x1fffffe + x9) - x39), ((0x1fffffe + x7) - x37), ((0x1fffffe + x5) - x35))) +(x, x0)%core + : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t) diff --git a/src/Specific/solinas32_2e384m79x2e376m1/feadd.c b/src/Specific/solinas32_2e384m79x2e376m1/feadd.c new file mode 100644 index 000000000..18b150e21 --- /dev/null +++ b/src/Specific/solinas32_2e384m79x2e376m1/feadd.c @@ -0,0 +1,51 @@ +static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) { + { const uint32_t x32 = in1[15]; + { const uint32_t x33 = in1[14]; + { const uint32_t x31 = in1[13]; + { const uint32_t x29 = in1[12]; + { const uint32_t x27 = in1[11]; + { const uint32_t x25 = in1[10]; + { const uint32_t x23 = in1[9]; + { const uint32_t x21 = in1[8]; + { const uint32_t x19 = in1[7]; + { const uint32_t x17 = in1[6]; + { const uint32_t x15 = in1[5]; + { const uint32_t x13 = in1[4]; + { const uint32_t x11 = in1[3]; + { const uint32_t x9 = in1[2]; + { const uint32_t x7 = in1[1]; + { const uint32_t x5 = in1[0]; + { const uint32_t x62 = in2[15]; + { const uint32_t x63 = in2[14]; + { const uint32_t x61 = in2[13]; + { const uint32_t x59 = in2[12]; + { const uint32_t x57 = in2[11]; + { const uint32_t x55 = in2[10]; + { const uint32_t x53 = in2[9]; + { const uint32_t x51 = in2[8]; + { const uint32_t x49 = in2[7]; + { const uint32_t x47 = in2[6]; + { const uint32_t x45 = in2[5]; + { const uint32_t x43 = in2[4]; + { const uint32_t x41 = in2[3]; + { const uint32_t x39 = in2[2]; + { const uint32_t x37 = in2[1]; + { const uint32_t x35 = in2[0]; + out[0] = (x5 + x35); + out[1] = (x7 + x37); + out[2] = (x9 + x39); + out[3] = (x11 + x41); + out[4] = (x13 + x43); + out[5] = (x15 + x45); + out[6] = (x17 + x47); + out[7] = (x19 + x49); + out[8] = (x21 + x51); + out[9] = (x23 + x53); + out[10] = (x25 + x55); + out[11] = (x27 + x57); + out[12] = (x29 + x59); + out[13] = (x31 + x61); + out[14] = (x33 + x63); + out[15] = (x32 + x62); + }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e384m79x2e376m1/feaddDisplay.log b/src/Specific/solinas32_2e384m79x2e376m1/feaddDisplay.log new file mode 100644 index 000000000..130c31964 --- /dev/null +++ b/src/Specific/solinas32_2e384m79x2e376m1/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core, + ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35))) +(x, x0)%core + : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t) diff --git a/src/Specific/solinas32_2e384m79x2e376m1/fesub.c b/src/Specific/solinas32_2e384m79x2e376m1/fesub.c new file mode 100644 index 000000000..6eb5e68f0 --- /dev/null +++ b/src/Specific/solinas32_2e384m79x2e376m1/fesub.c @@ -0,0 +1,51 @@ +static void fesub(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) { + { const uint32_t x32 = in1[15]; + { const uint32_t x33 = in1[14]; + { const uint32_t x31 = in1[13]; + { const uint32_t x29 = in1[12]; + { const uint32_t x27 = in1[11]; + { const uint32_t x25 = in1[10]; + { const uint32_t x23 = in1[9]; + { const uint32_t x21 = in1[8]; + { const uint32_t x19 = in1[7]; + { const uint32_t x17 = in1[6]; + { const uint32_t x15 = in1[5]; + { const uint32_t x13 = in1[4]; + { const uint32_t x11 = in1[3]; + { const uint32_t x9 = in1[2]; + { const uint32_t x7 = in1[1]; + { const uint32_t x5 = in1[0]; + { const uint32_t x62 = in2[15]; + { const uint32_t x63 = in2[14]; + { const uint32_t x61 = in2[13]; + { const uint32_t x59 = in2[12]; + { const uint32_t x57 = in2[11]; + { const uint32_t x55 = in2[10]; + { const uint32_t x53 = in2[9]; + { const uint32_t x51 = in2[8]; + { const uint32_t x49 = in2[7]; + { const uint32_t x47 = in2[6]; + { const uint32_t x45 = in2[5]; + { const uint32_t x43 = in2[4]; + { const uint32_t x41 = in2[3]; + { const uint32_t x39 = in2[2]; + { const uint32_t x37 = in2[1]; + { const uint32_t x35 = in2[0]; + out[0] = ((0x1fffffe + x5) - x35); + out[1] = ((0x1fffffe + x7) - x37); + out[2] = ((0x1fffffe + x9) - x39); + out[3] = ((0x1fffffe + x11) - x41); + out[4] = ((0x1fffffe + x13) - x43); + out[5] = ((0x1fffffe + x15) - x45); + out[6] = ((0x1fffffe + x17) - x47); + out[7] = ((0x1fffffe + x19) - x49); + out[8] = ((0x1fffffe + x21) - x51); + out[9] = ((0x1fffffe + x23) - x53); + out[10] = ((0x1fffffe + x25) - x55); + out[11] = ((0x1fffffe + x27) - x57); + out[12] = ((0x1fffffe + x29) - x59); + out[13] = ((0x1fffffe + x31) - x61); + out[14] = ((0x1fffffe + x33) - x63); + out[15] = ((Const 23199742 + x32) - x62); + }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e384m79x2e376m1/fesubDisplay.log b/src/Specific/solinas32_2e384m79x2e376m1/fesubDisplay.log new file mode 100644 index 000000000..e977bc991 --- /dev/null +++ b/src/Specific/solinas32_2e384m79x2e376m1/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core, + (((Const 23199742 + x32) - x62), ((0x1fffffe + x33) - x63), ((0x1fffffe + x31) - x61), ((0x1fffffe + x29) - x59), ((0x1fffffe + x27) - x57), ((0x1fffffe + x25) - x55), ((0x1fffffe + x23) - x53), ((0x1fffffe + x21) - x51), ((0x1fffffe + x19) - x49), ((0x1fffffe + x17) - x47), ((0x1fffffe + x15) - x45), ((0x1fffffe + x13) - x43), ((0x1fffffe + x11) - x41), ((0x1fffffe + x9) - x39), ((0x1fffffe + x7) - x37), ((0x1fffffe + x5) - x35))) +(x, x0)%core + : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t) diff --git a/src/Specific/solinas32_2e401m31/feadd.c b/src/Specific/solinas32_2e401m31/feadd.c new file mode 100644 index 000000000..18b150e21 --- /dev/null +++ b/src/Specific/solinas32_2e401m31/feadd.c @@ -0,0 +1,51 @@ +static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) { + { const uint32_t x32 = in1[15]; + { const uint32_t x33 = in1[14]; + { const uint32_t x31 = in1[13]; + { const uint32_t x29 = in1[12]; + { const uint32_t x27 = in1[11]; + { const uint32_t x25 = in1[10]; + { const uint32_t x23 = in1[9]; + { const uint32_t x21 = in1[8]; + { const uint32_t x19 = in1[7]; + { const uint32_t x17 = in1[6]; + { const uint32_t x15 = in1[5]; + { const uint32_t x13 = in1[4]; + { const uint32_t x11 = in1[3]; + { const uint32_t x9 = in1[2]; + { const uint32_t x7 = in1[1]; + { const uint32_t x5 = in1[0]; + { const uint32_t x62 = in2[15]; + { const uint32_t x63 = in2[14]; + { const uint32_t x61 = in2[13]; + { const uint32_t x59 = in2[12]; + { const uint32_t x57 = in2[11]; + { const uint32_t x55 = in2[10]; + { const uint32_t x53 = in2[9]; + { const uint32_t x51 = in2[8]; + { const uint32_t x49 = in2[7]; + { const uint32_t x47 = in2[6]; + { const uint32_t x45 = in2[5]; + { const uint32_t x43 = in2[4]; + { const uint32_t x41 = in2[3]; + { const uint32_t x39 = in2[2]; + { const uint32_t x37 = in2[1]; + { const uint32_t x35 = in2[0]; + out[0] = (x5 + x35); + out[1] = (x7 + x37); + out[2] = (x9 + x39); + out[3] = (x11 + x41); + out[4] = (x13 + x43); + out[5] = (x15 + x45); + out[6] = (x17 + x47); + out[7] = (x19 + x49); + out[8] = (x21 + x51); + out[9] = (x23 + x53); + out[10] = (x25 + x55); + out[11] = (x27 + x57); + out[12] = (x29 + x59); + out[13] = (x31 + x61); + out[14] = (x33 + x63); + out[15] = (x32 + x62); + }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e401m31/feaddDisplay.log b/src/Specific/solinas32_2e401m31/feaddDisplay.log new file mode 100644 index 000000000..130c31964 --- /dev/null +++ b/src/Specific/solinas32_2e401m31/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core, + ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35))) +(x, x0)%core + : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t) diff --git a/src/Specific/solinas32_2e401m31/fesub.c b/src/Specific/solinas32_2e401m31/fesub.c new file mode 100644 index 000000000..28f7376bc --- /dev/null +++ b/src/Specific/solinas32_2e401m31/fesub.c @@ -0,0 +1,51 @@ +static void fesub(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) { + { const uint32_t x32 = in1[15]; + { const uint32_t x33 = in1[14]; + { const uint32_t x31 = in1[13]; + { const uint32_t x29 = in1[12]; + { const uint32_t x27 = in1[11]; + { const uint32_t x25 = in1[10]; + { const uint32_t x23 = in1[9]; + { const uint32_t x21 = in1[8]; + { const uint32_t x19 = in1[7]; + { const uint32_t x17 = in1[6]; + { const uint32_t x15 = in1[5]; + { const uint32_t x13 = in1[4]; + { const uint32_t x11 = in1[3]; + { const uint32_t x9 = in1[2]; + { const uint32_t x7 = in1[1]; + { const uint32_t x5 = in1[0]; + { const uint32_t x62 = in2[15]; + { const uint32_t x63 = in2[14]; + { const uint32_t x61 = in2[13]; + { const uint32_t x59 = in2[12]; + { const uint32_t x57 = in2[11]; + { const uint32_t x55 = in2[10]; + { const uint32_t x53 = in2[9]; + { const uint32_t x51 = in2[8]; + { const uint32_t x49 = in2[7]; + { const uint32_t x47 = in2[6]; + { const uint32_t x45 = in2[5]; + { const uint32_t x43 = in2[4]; + { const uint32_t x41 = in2[3]; + { const uint32_t x39 = in2[2]; + { const uint32_t x37 = in2[1]; + { const uint32_t x35 = in2[0]; + out[0] = ((Const 134217666 + x5) - x35); + out[1] = ((0x3fffffe + x7) - x37); + out[2] = ((0x3fffffe + x9) - x39); + out[3] = ((0x3fffffe + x11) - x41); + out[4] = ((0x3fffffe + x13) - x43); + out[5] = ((0x3fffffe + x15) - x45); + out[6] = ((0x3fffffe + x17) - x47); + out[7] = ((0x3fffffe + x19) - x49); + out[8] = ((0x3fffffe + x21) - x51); + out[9] = ((0x3fffffe + x23) - x53); + out[10] = ((0x3fffffe + x25) - x55); + out[11] = ((0x3fffffe + x27) - x57); + out[12] = ((0x3fffffe + x29) - x59); + out[13] = ((0x3fffffe + x31) - x61); + out[14] = ((0x3fffffe + x33) - x63); + out[15] = ((0x3fffffe + x32) - x62); + }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e401m31/fesubDisplay.log b/src/Specific/solinas32_2e401m31/fesubDisplay.log new file mode 100644 index 000000000..70240c88f --- /dev/null +++ b/src/Specific/solinas32_2e401m31/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core, + (((0x3fffffe + x32) - x62), ((0x3fffffe + x33) - x63), ((0x3fffffe + x31) - x61), ((0x3fffffe + x29) - x59), ((0x3fffffe + x27) - x57), ((0x3fffffe + x25) - x55), ((0x3fffffe + x23) - x53), ((0x3fffffe + x21) - x51), ((0x3fffffe + x19) - x49), ((0x3fffffe + x17) - x47), ((0x3fffffe + x15) - x45), ((0x3fffffe + x13) - x43), ((0x3fffffe + x11) - x41), ((0x3fffffe + x9) - x39), ((0x3fffffe + x7) - x37), ((Const 134217666 + x5) - x35))) +(x, x0)%core + : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t) diff --git a/src/Specific/solinas32_2e416m2e208m1/feadd.c b/src/Specific/solinas32_2e416m2e208m1/feadd.c new file mode 100644 index 000000000..18b150e21 --- /dev/null +++ b/src/Specific/solinas32_2e416m2e208m1/feadd.c @@ -0,0 +1,51 @@ +static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) { + { const uint32_t x32 = in1[15]; + { const uint32_t x33 = in1[14]; + { const uint32_t x31 = in1[13]; + { const uint32_t x29 = in1[12]; + { const uint32_t x27 = in1[11]; + { const uint32_t x25 = in1[10]; + { const uint32_t x23 = in1[9]; + { const uint32_t x21 = in1[8]; + { const uint32_t x19 = in1[7]; + { const uint32_t x17 = in1[6]; + { const uint32_t x15 = in1[5]; + { const uint32_t x13 = in1[4]; + { const uint32_t x11 = in1[3]; + { const uint32_t x9 = in1[2]; + { const uint32_t x7 = in1[1]; + { const uint32_t x5 = in1[0]; + { const uint32_t x62 = in2[15]; + { const uint32_t x63 = in2[14]; + { const uint32_t x61 = in2[13]; + { const uint32_t x59 = in2[12]; + { const uint32_t x57 = in2[11]; + { const uint32_t x55 = in2[10]; + { const uint32_t x53 = in2[9]; + { const uint32_t x51 = in2[8]; + { const uint32_t x49 = in2[7]; + { const uint32_t x47 = in2[6]; + { const uint32_t x45 = in2[5]; + { const uint32_t x43 = in2[4]; + { const uint32_t x41 = in2[3]; + { const uint32_t x39 = in2[2]; + { const uint32_t x37 = in2[1]; + { const uint32_t x35 = in2[0]; + out[0] = (x5 + x35); + out[1] = (x7 + x37); + out[2] = (x9 + x39); + out[3] = (x11 + x41); + out[4] = (x13 + x43); + out[5] = (x15 + x45); + out[6] = (x17 + x47); + out[7] = (x19 + x49); + out[8] = (x21 + x51); + out[9] = (x23 + x53); + out[10] = (x25 + x55); + out[11] = (x27 + x57); + out[12] = (x29 + x59); + out[13] = (x31 + x61); + out[14] = (x33 + x63); + out[15] = (x32 + x62); + }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e416m2e208m1/feaddDisplay.log b/src/Specific/solinas32_2e416m2e208m1/feaddDisplay.log new file mode 100644 index 000000000..130c31964 --- /dev/null +++ b/src/Specific/solinas32_2e416m2e208m1/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core, + ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35))) +(x, x0)%core + : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t) diff --git a/src/Specific/solinas32_2e416m2e208m1/fesub.c b/src/Specific/solinas32_2e416m2e208m1/fesub.c new file mode 100644 index 000000000..db233695a --- /dev/null +++ b/src/Specific/solinas32_2e416m2e208m1/fesub.c @@ -0,0 +1,51 @@ +static void fesub(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) { + { const uint32_t x32 = in1[15]; + { const uint32_t x33 = in1[14]; + { const uint32_t x31 = in1[13]; + { const uint32_t x29 = in1[12]; + { const uint32_t x27 = in1[11]; + { const uint32_t x25 = in1[10]; + { const uint32_t x23 = in1[9]; + { const uint32_t x21 = in1[8]; + { const uint32_t x19 = in1[7]; + { const uint32_t x17 = in1[6]; + { const uint32_t x15 = in1[5]; + { const uint32_t x13 = in1[4]; + { const uint32_t x11 = in1[3]; + { const uint32_t x9 = in1[2]; + { const uint32_t x7 = in1[1]; + { const uint32_t x5 = in1[0]; + { const uint32_t x62 = in2[15]; + { const uint32_t x63 = in2[14]; + { const uint32_t x61 = in2[13]; + { const uint32_t x59 = in2[12]; + { const uint32_t x57 = in2[11]; + { const uint32_t x55 = in2[10]; + { const uint32_t x53 = in2[9]; + { const uint32_t x51 = in2[8]; + { const uint32_t x49 = in2[7]; + { const uint32_t x47 = in2[6]; + { const uint32_t x45 = in2[5]; + { const uint32_t x43 = in2[4]; + { const uint32_t x41 = in2[3]; + { const uint32_t x39 = in2[2]; + { const uint32_t x37 = in2[1]; + { const uint32_t x35 = in2[0]; + out[0] = ((0x7fffffe + x5) - x35); + out[1] = ((0x7fffffe + x7) - x37); + out[2] = ((0x7fffffe + x9) - x39); + out[3] = ((0x7fffffe + x11) - x41); + out[4] = ((0x7fffffe + x13) - x43); + out[5] = ((0x7fffffe + x15) - x45); + out[6] = ((0x7fffffe + x17) - x47); + out[7] = ((0x7fffffe + x19) - x49); + out[8] = ((Const 134217724 + x21) - x51); + out[9] = ((0x7fffffe + x23) - x53); + out[10] = ((0x7fffffe + x25) - x55); + out[11] = ((0x7fffffe + x27) - x57); + out[12] = ((0x7fffffe + x29) - x59); + out[13] = ((0x7fffffe + x31) - x61); + out[14] = ((0x7fffffe + x33) - x63); + out[15] = ((0x7fffffe + x32) - x62); + }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e416m2e208m1/fesubDisplay.log b/src/Specific/solinas32_2e416m2e208m1/fesubDisplay.log new file mode 100644 index 000000000..f940d6d0b --- /dev/null +++ b/src/Specific/solinas32_2e416m2e208m1/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core, + (((0x7fffffe + x32) - x62), ((0x7fffffe + x33) - x63), ((0x7fffffe + x31) - x61), ((0x7fffffe + x29) - x59), ((0x7fffffe + x27) - x57), ((0x7fffffe + x25) - x55), ((0x7fffffe + x23) - x53), ((Const 134217724 + x21) - x51), ((0x7fffffe + x19) - x49), ((0x7fffffe + x17) - x47), ((0x7fffffe + x15) - x45), ((0x7fffffe + x13) - x43), ((0x7fffffe + x11) - x41), ((0x7fffffe + x9) - x39), ((0x7fffffe + x7) - x37), ((0x7fffffe + x5) - x35))) +(x, x0)%core + : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t) diff --git a/src/Specific/solinas32_2e448m2e224m1/feadd.c b/src/Specific/solinas32_2e448m2e224m1/feadd.c new file mode 100644 index 000000000..18b150e21 --- /dev/null +++ b/src/Specific/solinas32_2e448m2e224m1/feadd.c @@ -0,0 +1,51 @@ +static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) { + { const uint32_t x32 = in1[15]; + { const uint32_t x33 = in1[14]; + { const uint32_t x31 = in1[13]; + { const uint32_t x29 = in1[12]; + { const uint32_t x27 = in1[11]; + { const uint32_t x25 = in1[10]; + { const uint32_t x23 = in1[9]; + { const uint32_t x21 = in1[8]; + { const uint32_t x19 = in1[7]; + { const uint32_t x17 = in1[6]; + { const uint32_t x15 = in1[5]; + { const uint32_t x13 = in1[4]; + { const uint32_t x11 = in1[3]; + { const uint32_t x9 = in1[2]; + { const uint32_t x7 = in1[1]; + { const uint32_t x5 = in1[0]; + { const uint32_t x62 = in2[15]; + { const uint32_t x63 = in2[14]; + { const uint32_t x61 = in2[13]; + { const uint32_t x59 = in2[12]; + { const uint32_t x57 = in2[11]; + { const uint32_t x55 = in2[10]; + { const uint32_t x53 = in2[9]; + { const uint32_t x51 = in2[8]; + { const uint32_t x49 = in2[7]; + { const uint32_t x47 = in2[6]; + { const uint32_t x45 = in2[5]; + { const uint32_t x43 = in2[4]; + { const uint32_t x41 = in2[3]; + { const uint32_t x39 = in2[2]; + { const uint32_t x37 = in2[1]; + { const uint32_t x35 = in2[0]; + out[0] = (x5 + x35); + out[1] = (x7 + x37); + out[2] = (x9 + x39); + out[3] = (x11 + x41); + out[4] = (x13 + x43); + out[5] = (x15 + x45); + out[6] = (x17 + x47); + out[7] = (x19 + x49); + out[8] = (x21 + x51); + out[9] = (x23 + x53); + out[10] = (x25 + x55); + out[11] = (x27 + x57); + out[12] = (x29 + x59); + out[13] = (x31 + x61); + out[14] = (x33 + x63); + out[15] = (x32 + x62); + }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e448m2e224m1/feaddDisplay.log b/src/Specific/solinas32_2e448m2e224m1/feaddDisplay.log new file mode 100644 index 000000000..130c31964 --- /dev/null +++ b/src/Specific/solinas32_2e448m2e224m1/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core, + ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35))) +(x, x0)%core + : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t) diff --git a/src/Specific/solinas32_2e448m2e224m1/fesub.c b/src/Specific/solinas32_2e448m2e224m1/fesub.c new file mode 100644 index 000000000..0385245b5 --- /dev/null +++ b/src/Specific/solinas32_2e448m2e224m1/fesub.c @@ -0,0 +1,51 @@ +static void fesub(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) { + { const uint32_t x32 = in1[15]; + { const uint32_t x33 = in1[14]; + { const uint32_t x31 = in1[13]; + { const uint32_t x29 = in1[12]; + { const uint32_t x27 = in1[11]; + { const uint32_t x25 = in1[10]; + { const uint32_t x23 = in1[9]; + { const uint32_t x21 = in1[8]; + { const uint32_t x19 = in1[7]; + { const uint32_t x17 = in1[6]; + { const uint32_t x15 = in1[5]; + { const uint32_t x13 = in1[4]; + { const uint32_t x11 = in1[3]; + { const uint32_t x9 = in1[2]; + { const uint32_t x7 = in1[1]; + { const uint32_t x5 = in1[0]; + { const uint32_t x62 = in2[15]; + { const uint32_t x63 = in2[14]; + { const uint32_t x61 = in2[13]; + { const uint32_t x59 = in2[12]; + { const uint32_t x57 = in2[11]; + { const uint32_t x55 = in2[10]; + { const uint32_t x53 = in2[9]; + { const uint32_t x51 = in2[8]; + { const uint32_t x49 = in2[7]; + { const uint32_t x47 = in2[6]; + { const uint32_t x45 = in2[5]; + { const uint32_t x43 = in2[4]; + { const uint32_t x41 = in2[3]; + { const uint32_t x39 = in2[2]; + { const uint32_t x37 = in2[1]; + { const uint32_t x35 = in2[0]; + out[0] = ((0x1ffffffe + x5) - x35); + out[1] = ((0x1ffffffe + x7) - x37); + out[2] = ((0x1ffffffe + x9) - x39); + out[3] = ((0x1ffffffe + x11) - x41); + out[4] = ((0x1ffffffe + x13) - x43); + out[5] = ((0x1ffffffe + x15) - x45); + out[6] = ((0x1ffffffe + x17) - x47); + out[7] = ((0x1ffffffe + x19) - x49); + out[8] = ((Const 536870908 + x21) - x51); + out[9] = ((0x1ffffffe + x23) - x53); + out[10] = ((0x1ffffffe + x25) - x55); + out[11] = ((0x1ffffffe + x27) - x57); + out[12] = ((0x1ffffffe + x29) - x59); + out[13] = ((0x1ffffffe + x31) - x61); + out[14] = ((0x1ffffffe + x33) - x63); + out[15] = ((0x1ffffffe + x32) - x62); + }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e448m2e224m1/fesubDisplay.log b/src/Specific/solinas32_2e448m2e224m1/fesubDisplay.log new file mode 100644 index 000000000..906f9306f --- /dev/null +++ b/src/Specific/solinas32_2e448m2e224m1/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core, + (((0x1ffffffe + x32) - x62), ((0x1ffffffe + x33) - x63), ((0x1ffffffe + x31) - x61), ((0x1ffffffe + x29) - x59), ((0x1ffffffe + x27) - x57), ((0x1ffffffe + x25) - x55), ((0x1ffffffe + x23) - x53), ((Const 536870908 + x21) - x51), ((0x1ffffffe + x19) - x49), ((0x1ffffffe + x17) - x47), ((0x1ffffffe + x15) - x45), ((0x1ffffffe + x13) - x43), ((0x1ffffffe + x11) - x41), ((0x1ffffffe + x9) - x39), ((0x1ffffffe + x7) - x37), ((0x1ffffffe + x5) - x35))) +(x, x0)%core + : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t) diff --git a/src/Specific/solinas32_2e452m3/feadd.c b/src/Specific/solinas32_2e452m3/feadd.c new file mode 100644 index 000000000..18b150e21 --- /dev/null +++ b/src/Specific/solinas32_2e452m3/feadd.c @@ -0,0 +1,51 @@ +static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) { + { const uint32_t x32 = in1[15]; + { const uint32_t x33 = in1[14]; + { const uint32_t x31 = in1[13]; + { const uint32_t x29 = in1[12]; + { const uint32_t x27 = in1[11]; + { const uint32_t x25 = in1[10]; + { const uint32_t x23 = in1[9]; + { const uint32_t x21 = in1[8]; + { const uint32_t x19 = in1[7]; + { const uint32_t x17 = in1[6]; + { const uint32_t x15 = in1[5]; + { const uint32_t x13 = in1[4]; + { const uint32_t x11 = in1[3]; + { const uint32_t x9 = in1[2]; + { const uint32_t x7 = in1[1]; + { const uint32_t x5 = in1[0]; + { const uint32_t x62 = in2[15]; + { const uint32_t x63 = in2[14]; + { const uint32_t x61 = in2[13]; + { const uint32_t x59 = in2[12]; + { const uint32_t x57 = in2[11]; + { const uint32_t x55 = in2[10]; + { const uint32_t x53 = in2[9]; + { const uint32_t x51 = in2[8]; + { const uint32_t x49 = in2[7]; + { const uint32_t x47 = in2[6]; + { const uint32_t x45 = in2[5]; + { const uint32_t x43 = in2[4]; + { const uint32_t x41 = in2[3]; + { const uint32_t x39 = in2[2]; + { const uint32_t x37 = in2[1]; + { const uint32_t x35 = in2[0]; + out[0] = (x5 + x35); + out[1] = (x7 + x37); + out[2] = (x9 + x39); + out[3] = (x11 + x41); + out[4] = (x13 + x43); + out[5] = (x15 + x45); + out[6] = (x17 + x47); + out[7] = (x19 + x49); + out[8] = (x21 + x51); + out[9] = (x23 + x53); + out[10] = (x25 + x55); + out[11] = (x27 + x57); + out[12] = (x29 + x59); + out[13] = (x31 + x61); + out[14] = (x33 + x63); + out[15] = (x32 + x62); + }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e452m3/feaddDisplay.log b/src/Specific/solinas32_2e452m3/feaddDisplay.log new file mode 100644 index 000000000..130c31964 --- /dev/null +++ b/src/Specific/solinas32_2e452m3/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core, + ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35))) +(x, x0)%core + : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t) diff --git a/src/Specific/solinas32_2e452m3/fesub.c b/src/Specific/solinas32_2e452m3/fesub.c new file mode 100644 index 000000000..0f52d6a92 --- /dev/null +++ b/src/Specific/solinas32_2e452m3/fesub.c @@ -0,0 +1,51 @@ +static void fesub(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) { + { const uint32_t x32 = in1[15]; + { const uint32_t x33 = in1[14]; + { const uint32_t x31 = in1[13]; + { const uint32_t x29 = in1[12]; + { const uint32_t x27 = in1[11]; + { const uint32_t x25 = in1[10]; + { const uint32_t x23 = in1[9]; + { const uint32_t x21 = in1[8]; + { const uint32_t x19 = in1[7]; + { const uint32_t x17 = in1[6]; + { const uint32_t x15 = in1[5]; + { const uint32_t x13 = in1[4]; + { const uint32_t x11 = in1[3]; + { const uint32_t x9 = in1[2]; + { const uint32_t x7 = in1[1]; + { const uint32_t x5 = in1[0]; + { const uint32_t x62 = in2[15]; + { const uint32_t x63 = in2[14]; + { const uint32_t x61 = in2[13]; + { const uint32_t x59 = in2[12]; + { const uint32_t x57 = in2[11]; + { const uint32_t x55 = in2[10]; + { const uint32_t x53 = in2[9]; + { const uint32_t x51 = in2[8]; + { const uint32_t x49 = in2[7]; + { const uint32_t x47 = in2[6]; + { const uint32_t x45 = in2[5]; + { const uint32_t x43 = in2[4]; + { const uint32_t x41 = in2[3]; + { const uint32_t x39 = in2[2]; + { const uint32_t x37 = in2[1]; + { const uint32_t x35 = in2[0]; + out[0] = ((0x3ffffffa + x5) - x35); + out[1] = ((0x1ffffffe + x7) - x37); + out[2] = ((0x1ffffffe + x9) - x39); + out[3] = ((0x1ffffffe + x11) - x41); + out[4] = ((0x3ffffffe + x13) - x43); + out[5] = ((0x1ffffffe + x15) - x45); + out[6] = ((0x1ffffffe + x17) - x47); + out[7] = ((0x1ffffffe + x19) - x49); + out[8] = ((0x3ffffffe + x21) - x51); + out[9] = ((0x1ffffffe + x23) - x53); + out[10] = ((0x1ffffffe + x25) - x55); + out[11] = ((0x1ffffffe + x27) - x57); + out[12] = ((0x3ffffffe + x29) - x59); + out[13] = ((0x1ffffffe + x31) - x61); + out[14] = ((0x1ffffffe + x33) - x63); + out[15] = ((0x1ffffffe + x32) - x62); + }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e452m3/fesubDisplay.log b/src/Specific/solinas32_2e452m3/fesubDisplay.log new file mode 100644 index 000000000..bf6609b6d --- /dev/null +++ b/src/Specific/solinas32_2e452m3/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core, + (((0x1ffffffe + x32) - x62), ((0x1ffffffe + x33) - x63), ((0x1ffffffe + x31) - x61), ((0x3ffffffe + x29) - x59), ((0x1ffffffe + x27) - x57), ((0x1ffffffe + x25) - x55), ((0x1ffffffe + x23) - x53), ((0x3ffffffe + x21) - x51), ((0x1ffffffe + x19) - x49), ((0x1ffffffe + x17) - x47), ((0x1ffffffe + x15) - x45), ((0x3ffffffe + x13) - x43), ((0x1ffffffe + x11) - x41), ((0x1ffffffe + x9) - x39), ((0x1ffffffe + x7) - x37), ((0x3ffffffa + x5) - x35))) +(x, x0)%core + : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t) diff --git a/src/Specific/solinas32_2e480m2e240m1/feadd.c b/src/Specific/solinas32_2e480m2e240m1/feadd.c new file mode 100644 index 000000000..18b150e21 --- /dev/null +++ b/src/Specific/solinas32_2e480m2e240m1/feadd.c @@ -0,0 +1,51 @@ +static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) { + { const uint32_t x32 = in1[15]; + { const uint32_t x33 = in1[14]; + { const uint32_t x31 = in1[13]; + { const uint32_t x29 = in1[12]; + { const uint32_t x27 = in1[11]; + { const uint32_t x25 = in1[10]; + { const uint32_t x23 = in1[9]; + { const uint32_t x21 = in1[8]; + { const uint32_t x19 = in1[7]; + { const uint32_t x17 = in1[6]; + { const uint32_t x15 = in1[5]; + { const uint32_t x13 = in1[4]; + { const uint32_t x11 = in1[3]; + { const uint32_t x9 = in1[2]; + { const uint32_t x7 = in1[1]; + { const uint32_t x5 = in1[0]; + { const uint32_t x62 = in2[15]; + { const uint32_t x63 = in2[14]; + { const uint32_t x61 = in2[13]; + { const uint32_t x59 = in2[12]; + { const uint32_t x57 = in2[11]; + { const uint32_t x55 = in2[10]; + { const uint32_t x53 = in2[9]; + { const uint32_t x51 = in2[8]; + { const uint32_t x49 = in2[7]; + { const uint32_t x47 = in2[6]; + { const uint32_t x45 = in2[5]; + { const uint32_t x43 = in2[4]; + { const uint32_t x41 = in2[3]; + { const uint32_t x39 = in2[2]; + { const uint32_t x37 = in2[1]; + { const uint32_t x35 = in2[0]; + out[0] = (x5 + x35); + out[1] = (x7 + x37); + out[2] = (x9 + x39); + out[3] = (x11 + x41); + out[4] = (x13 + x43); + out[5] = (x15 + x45); + out[6] = (x17 + x47); + out[7] = (x19 + x49); + out[8] = (x21 + x51); + out[9] = (x23 + x53); + out[10] = (x25 + x55); + out[11] = (x27 + x57); + out[12] = (x29 + x59); + out[13] = (x31 + x61); + out[14] = (x33 + x63); + out[15] = (x32 + x62); + }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e480m2e240m1/feaddDisplay.log b/src/Specific/solinas32_2e480m2e240m1/feaddDisplay.log new file mode 100644 index 000000000..130c31964 --- /dev/null +++ b/src/Specific/solinas32_2e480m2e240m1/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core, + ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35))) +(x, x0)%core + : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t) diff --git a/src/Specific/solinas32_2e480m2e240m1/fesub.c b/src/Specific/solinas32_2e480m2e240m1/fesub.c new file mode 100644 index 000000000..50d2ba125 --- /dev/null +++ b/src/Specific/solinas32_2e480m2e240m1/fesub.c @@ -0,0 +1,51 @@ +static void fesub(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) { + { const uint32_t x32 = in1[15]; + { const uint32_t x33 = in1[14]; + { const uint32_t x31 = in1[13]; + { const uint32_t x29 = in1[12]; + { const uint32_t x27 = in1[11]; + { const uint32_t x25 = in1[10]; + { const uint32_t x23 = in1[9]; + { const uint32_t x21 = in1[8]; + { const uint32_t x19 = in1[7]; + { const uint32_t x17 = in1[6]; + { const uint32_t x15 = in1[5]; + { const uint32_t x13 = in1[4]; + { const uint32_t x11 = in1[3]; + { const uint32_t x9 = in1[2]; + { const uint32_t x7 = in1[1]; + { const uint32_t x5 = in1[0]; + { const uint32_t x62 = in2[15]; + { const uint32_t x63 = in2[14]; + { const uint32_t x61 = in2[13]; + { const uint32_t x59 = in2[12]; + { const uint32_t x57 = in2[11]; + { const uint32_t x55 = in2[10]; + { const uint32_t x53 = in2[9]; + { const uint32_t x51 = in2[8]; + { const uint32_t x49 = in2[7]; + { const uint32_t x47 = in2[6]; + { const uint32_t x45 = in2[5]; + { const uint32_t x43 = in2[4]; + { const uint32_t x41 = in2[3]; + { const uint32_t x39 = in2[2]; + { const uint32_t x37 = in2[1]; + { const uint32_t x35 = in2[0]; + out[0] = ((0x7ffffffe + x5) - x35); + out[1] = ((0x7ffffffe + x7) - x37); + out[2] = ((0x7ffffffe + x9) - x39); + out[3] = ((0x7ffffffe + x11) - x41); + out[4] = ((0x7ffffffe + x13) - x43); + out[5] = ((0x7ffffffe + x15) - x45); + out[6] = ((0x7ffffffe + x17) - x47); + out[7] = ((0x7ffffffe + x19) - x49); + out[8] = ((Const 2147483644 + x21) - x51); + out[9] = ((0x7ffffffe + x23) - x53); + out[10] = ((0x7ffffffe + x25) - x55); + out[11] = ((0x7ffffffe + x27) - x57); + out[12] = ((0x7ffffffe + x29) - x59); + out[13] = ((0x7ffffffe + x31) - x61); + out[14] = ((0x7ffffffe + x33) - x63); + out[15] = ((0x7ffffffe + x32) - x62); + }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e480m2e240m1/fesubDisplay.log b/src/Specific/solinas32_2e480m2e240m1/fesubDisplay.log new file mode 100644 index 000000000..fb087ccf8 --- /dev/null +++ b/src/Specific/solinas32_2e480m2e240m1/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core, + (((0x7ffffffe + x32) - x62), ((0x7ffffffe + x33) - x63), ((0x7ffffffe + x31) - x61), ((0x7ffffffe + x29) - x59), ((0x7ffffffe + x27) - x57), ((0x7ffffffe + x25) - x55), ((0x7ffffffe + x23) - x53), ((Const 2147483644 + x21) - x51), ((0x7ffffffe + x19) - x49), ((0x7ffffffe + x17) - x47), ((0x7ffffffe + x15) - x45), ((0x7ffffffe + x13) - x43), ((0x7ffffffe + x11) - x41), ((0x7ffffffe + x9) - x39), ((0x7ffffffe + x7) - x37), ((0x7ffffffe + x5) - x35))) +(x, x0)%core + : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t) diff --git a/src/Specific/solinas64_2e488m17/feadd.c b/src/Specific/solinas64_2e488m17/feadd.c new file mode 100644 index 000000000..89267745e --- /dev/null +++ b/src/Specific/solinas64_2e488m17/feadd.c @@ -0,0 +1,51 @@ +static void feadd(uint64_t out[16], const uint64_t in1[16], const uint64_t in2[16]) { + { const uint64_t x32 = in1[15]; + { const uint64_t x33 = in1[14]; + { const uint64_t x31 = in1[13]; + { const uint64_t x29 = in1[12]; + { const uint64_t x27 = in1[11]; + { const uint64_t x25 = in1[10]; + { const uint64_t x23 = in1[9]; + { const uint64_t x21 = in1[8]; + { const uint64_t x19 = in1[7]; + { const uint64_t x17 = in1[6]; + { const uint64_t x15 = in1[5]; + { const uint64_t x13 = in1[4]; + { const uint64_t x11 = in1[3]; + { const uint64_t x9 = in1[2]; + { const uint64_t x7 = in1[1]; + { const uint64_t x5 = in1[0]; + { const uint64_t x62 = in2[15]; + { const uint64_t x63 = in2[14]; + { const uint64_t x61 = in2[13]; + { const uint64_t x59 = in2[12]; + { const uint64_t x57 = in2[11]; + { const uint64_t x55 = in2[10]; + { const uint64_t x53 = in2[9]; + { const uint64_t x51 = in2[8]; + { const uint64_t x49 = in2[7]; + { const uint64_t x47 = in2[6]; + { const uint64_t x45 = in2[5]; + { const uint64_t x43 = in2[4]; + { const uint64_t x41 = in2[3]; + { const uint64_t x39 = in2[2]; + { const uint64_t x37 = in2[1]; + { const uint64_t x35 = in2[0]; + out[0] = (x5 + x35); + out[1] = (x7 + x37); + out[2] = (x9 + x39); + out[3] = (x11 + x41); + out[4] = (x13 + x43); + out[5] = (x15 + x45); + out[6] = (x17 + x47); + out[7] = (x19 + x49); + out[8] = (x21 + x51); + out[9] = (x23 + x53); + out[10] = (x25 + x55); + out[11] = (x27 + x57); + out[12] = (x29 + x59); + out[13] = (x31 + x61); + out[14] = (x33 + x63); + out[15] = (x32 + x62); + }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e488m17/feaddDisplay.log b/src/Specific/solinas64_2e488m17/feaddDisplay.log new file mode 100644 index 000000000..65c57ff77 --- /dev/null +++ b/src/Specific/solinas64_2e488m17/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core, + ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35))) +(x, x0)%core + : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t) diff --git a/src/Specific/solinas64_2e488m17/fesub.c b/src/Specific/solinas64_2e488m17/fesub.c new file mode 100644 index 000000000..b32e02aff --- /dev/null +++ b/src/Specific/solinas64_2e488m17/fesub.c @@ -0,0 +1,51 @@ +static void fesub(uint64_t out[16], const uint64_t in1[16], const uint64_t in2[16]) { + { const uint64_t x32 = in1[15]; + { const uint64_t x33 = in1[14]; + { const uint64_t x31 = in1[13]; + { const uint64_t x29 = in1[12]; + { const uint64_t x27 = in1[11]; + { const uint64_t x25 = in1[10]; + { const uint64_t x23 = in1[9]; + { const uint64_t x21 = in1[8]; + { const uint64_t x19 = in1[7]; + { const uint64_t x17 = in1[6]; + { const uint64_t x15 = in1[5]; + { const uint64_t x13 = in1[4]; + { const uint64_t x11 = in1[3]; + { const uint64_t x9 = in1[2]; + { const uint64_t x7 = in1[1]; + { const uint64_t x5 = in1[0]; + { const uint64_t x62 = in2[15]; + { const uint64_t x63 = in2[14]; + { const uint64_t x61 = in2[13]; + { const uint64_t x59 = in2[12]; + { const uint64_t x57 = in2[11]; + { const uint64_t x55 = in2[10]; + { const uint64_t x53 = in2[9]; + { const uint64_t x51 = in2[8]; + { const uint64_t x49 = in2[7]; + { const uint64_t x47 = in2[6]; + { const uint64_t x45 = in2[5]; + { const uint64_t x43 = in2[4]; + { const uint64_t x41 = in2[3]; + { const uint64_t x39 = in2[2]; + { const uint64_t x37 = in2[1]; + { const uint64_t x35 = in2[0]; + out[0] = ((Const 4294967262 + x5) - x35); + out[1] = ((0x7ffffffe + x7) - x37); + out[2] = ((0xfffffffe + x9) - x39); + out[3] = ((0x7ffffffe + x11) - x41); + out[4] = ((0xfffffffe + x13) - x43); + out[5] = ((0x7ffffffe + x15) - x45); + out[6] = ((0xfffffffe + x17) - x47); + out[7] = ((0x7ffffffe + x19) - x49); + out[8] = ((0xfffffffe + x21) - x51); + out[9] = ((0x7ffffffe + x23) - x53); + out[10] = ((0xfffffffe + x25) - x55); + out[11] = ((0x7ffffffe + x27) - x57); + out[12] = ((0xfffffffe + x29) - x59); + out[13] = ((0x7ffffffe + x31) - x61); + out[14] = ((0xfffffffe + x33) - x63); + out[15] = ((0x7ffffffe + x32) - x62); + }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e488m17/fesubDisplay.log b/src/Specific/solinas64_2e488m17/fesubDisplay.log new file mode 100644 index 000000000..c3515ecdb --- /dev/null +++ b/src/Specific/solinas64_2e488m17/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core, + (((0x7ffffffe + x32) - x62), ((0xfffffffe + x33) - x63), ((0x7ffffffe + x31) - x61), ((0xfffffffe + x29) - x59), ((0x7ffffffe + x27) - x57), ((0xfffffffe + x25) - x55), ((0x7ffffffe + x23) - x53), ((0xfffffffe + x21) - x51), ((0x7ffffffe + x19) - x49), ((0xfffffffe + x17) - x47), ((0x7ffffffe + x15) - x45), ((0xfffffffe + x13) - x43), ((0x7ffffffe + x11) - x41), ((0xfffffffe + x9) - x39), ((0x7ffffffe + x7) - x37), ((Const 4294967262 + x5) - x35))) +(x, x0)%core + : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t) |