From 30ce7aba6875215c0ab8237368bbb1cde0dc0b7d Mon Sep 17 00:00:00 2001 From: Jason Gross Date: Thu, 2 Nov 2017 12:45:12 -0400 Subject: Update display logs and c files --- src/Specific/solinas32_2e137m13/feadd.c | 27 ++++++++++++++++++++++ src/Specific/solinas32_2e137m13/feaddDisplay.log | 7 ++++++ src/Specific/solinas32_2e137m13/fesub.c | 27 ++++++++++++++++++++++ src/Specific/solinas32_2e137m13/fesubDisplay.log | 7 ++++++ src/Specific/solinas32_2e192m2e64m1/feadd.c | 27 ++++++++++++++++++++++ .../solinas32_2e192m2e64m1/feaddDisplay.log | 7 ++++++ src/Specific/solinas32_2e192m2e64m1/fesub.c | 27 ++++++++++++++++++++++ .../solinas32_2e192m2e64m1/fesubDisplay.log | 7 ++++++ src/Specific/solinas32_2e194m33/feadd.c | 27 ++++++++++++++++++++++ src/Specific/solinas32_2e194m33/feaddDisplay.log | 7 ++++++ src/Specific/solinas32_2e194m33/fesub.c | 27 ++++++++++++++++++++++ src/Specific/solinas32_2e194m33/fesubDisplay.log | 7 ++++++ src/Specific/solinas32_2e212m29/feadd.c | 27 ++++++++++++++++++++++ src/Specific/solinas32_2e212m29/feaddDisplay.log | 7 ++++++ src/Specific/solinas32_2e212m29/fesub.c | 27 ++++++++++++++++++++++ src/Specific/solinas32_2e212m29/fesubDisplay.log | 7 ++++++ src/Specific/solinas32_2e216m2e108m1/feadd.c | 27 ++++++++++++++++++++++ .../solinas32_2e216m2e108m1/feaddDisplay.log | 7 ++++++ src/Specific/solinas32_2e216m2e108m1/fesub.c | 27 ++++++++++++++++++++++ .../solinas32_2e216m2e108m1/fesubDisplay.log | 7 ++++++ src/Specific/solinas32_2e224m2e96p1/feadd.c | 27 ++++++++++++++++++++++ .../solinas32_2e224m2e96p1/feaddDisplay.log | 7 ++++++ src/Specific/solinas32_2e226m5/feadd.c | 27 ++++++++++++++++++++++ src/Specific/solinas32_2e226m5/feaddDisplay.log | 7 ++++++ src/Specific/solinas32_2e226m5/fesub.c | 27 ++++++++++++++++++++++ src/Specific/solinas32_2e226m5/fesubDisplay.log | 7 ++++++ src/Specific/solinas64_2e369m25/feadd.c | 27 ++++++++++++++++++++++ src/Specific/solinas64_2e369m25/feaddDisplay.log | 7 ++++++ src/Specific/solinas64_2e369m25/fesub.c | 27 ++++++++++++++++++++++ src/Specific/solinas64_2e369m25/fesubDisplay.log | 7 ++++++ .../solinas64_2e384m2e128m2e96p2e32m1/feadd.c | 27 ++++++++++++++++++++++ .../feaddDisplay.log | 7 ++++++ src/Specific/solinas64_2e384m317/feadd.c | 27 ++++++++++++++++++++++ src/Specific/solinas64_2e384m317/feaddDisplay.log | 7 ++++++ src/Specific/solinas64_2e384m317/fesub.c | 27 ++++++++++++++++++++++ src/Specific/solinas64_2e384m317/fesubDisplay.log | 7 ++++++ src/Specific/solinas64_2e384m5x2e368m1/feadd.c | 27 ++++++++++++++++++++++ .../solinas64_2e384m5x2e368m1/feaddDisplay.log | 7 ++++++ src/Specific/solinas64_2e384m5x2e368m1/fesub.c | 27 ++++++++++++++++++++++ .../solinas64_2e384m5x2e368m1/fesubDisplay.log | 7 ++++++ src/Specific/solinas64_2e384m79x2e376m1/feadd.c | 27 ++++++++++++++++++++++ .../solinas64_2e384m79x2e376m1/feaddDisplay.log | 7 ++++++ src/Specific/solinas64_2e384m79x2e376m1/fesub.c | 27 ++++++++++++++++++++++ .../solinas64_2e384m79x2e376m1/fesubDisplay.log | 7 ++++++ src/Specific/solinas64_2e401m31/feadd.c | 27 ++++++++++++++++++++++ src/Specific/solinas64_2e401m31/feaddDisplay.log | 7 ++++++ src/Specific/solinas64_2e401m31/fesub.c | 27 ++++++++++++++++++++++ src/Specific/solinas64_2e401m31/fesubDisplay.log | 7 ++++++ src/Specific/solinas64_2e416m2e208m1/feadd.c | 27 ++++++++++++++++++++++ .../solinas64_2e416m2e208m1/feaddDisplay.log | 7 ++++++ src/Specific/solinas64_2e416m2e208m1/fesub.c | 27 ++++++++++++++++++++++ .../solinas64_2e416m2e208m1/fesubDisplay.log | 7 ++++++ src/Specific/solinas64_2e444m17/feadd.c | 27 ++++++++++++++++++++++ src/Specific/solinas64_2e444m17/feaddDisplay.log | 7 ++++++ src/Specific/solinas64_2e444m17/fesub.c | 27 ++++++++++++++++++++++ src/Specific/solinas64_2e444m17/fesubDisplay.log | 7 ++++++ src/Specific/solinas64_2e448m2e224m1/feadd.c | 27 ++++++++++++++++++++++ .../solinas64_2e448m2e224m1/feaddDisplay.log | 7 ++++++ src/Specific/solinas64_2e448m2e224m1/fesub.c | 27 ++++++++++++++++++++++ .../solinas64_2e448m2e224m1/fesubDisplay.log | 7 ++++++ src/Specific/solinas64_2e450m2e225m1/feadd.c | 27 ++++++++++++++++++++++ .../solinas64_2e450m2e225m1/feaddDisplay.log | 7 ++++++ src/Specific/solinas64_2e450m2e225m1/fesub.c | 27 ++++++++++++++++++++++ .../solinas64_2e450m2e225m1/fesubDisplay.log | 7 ++++++ src/Specific/solinas64_2e452m3/feadd.c | 27 ++++++++++++++++++++++ src/Specific/solinas64_2e452m3/feaddDisplay.log | 7 ++++++ src/Specific/solinas64_2e452m3/fesub.c | 27 ++++++++++++++++++++++ src/Specific/solinas64_2e452m3/fesubDisplay.log | 7 ++++++ src/Specific/solinas64_2e468m17/feadd.c | 27 ++++++++++++++++++++++ src/Specific/solinas64_2e468m17/feaddDisplay.log | 7 ++++++ src/Specific/solinas64_2e468m17/fesub.c | 27 ++++++++++++++++++++++ src/Specific/solinas64_2e468m17/fesubDisplay.log | 7 ++++++ src/Specific/solinas64_2e480m2e240m1/feadd.c | 27 ++++++++++++++++++++++ .../solinas64_2e480m2e240m1/feaddDisplay.log | 7 ++++++ src/Specific/solinas64_2e480m2e240m1/fesub.c | 27 ++++++++++++++++++++++ .../solinas64_2e480m2e240m1/fesubDisplay.log | 7 ++++++ 76 files changed, 1292 insertions(+) create mode 100644 src/Specific/solinas32_2e137m13/feadd.c create mode 100644 src/Specific/solinas32_2e137m13/feaddDisplay.log create mode 100644 src/Specific/solinas32_2e137m13/fesub.c create mode 100644 src/Specific/solinas32_2e137m13/fesubDisplay.log create mode 100644 src/Specific/solinas32_2e192m2e64m1/feadd.c create mode 100644 src/Specific/solinas32_2e192m2e64m1/feaddDisplay.log create mode 100644 src/Specific/solinas32_2e192m2e64m1/fesub.c create mode 100644 src/Specific/solinas32_2e192m2e64m1/fesubDisplay.log create mode 100644 src/Specific/solinas32_2e194m33/feadd.c create mode 100644 src/Specific/solinas32_2e194m33/feaddDisplay.log create mode 100644 src/Specific/solinas32_2e194m33/fesub.c create mode 100644 src/Specific/solinas32_2e194m33/fesubDisplay.log create mode 100644 src/Specific/solinas32_2e212m29/feadd.c create mode 100644 src/Specific/solinas32_2e212m29/feaddDisplay.log create mode 100644 src/Specific/solinas32_2e212m29/fesub.c create mode 100644 src/Specific/solinas32_2e212m29/fesubDisplay.log create mode 100644 src/Specific/solinas32_2e216m2e108m1/feadd.c create mode 100644 src/Specific/solinas32_2e216m2e108m1/feaddDisplay.log create mode 100644 src/Specific/solinas32_2e216m2e108m1/fesub.c create mode 100644 src/Specific/solinas32_2e216m2e108m1/fesubDisplay.log create mode 100644 src/Specific/solinas32_2e224m2e96p1/feadd.c create mode 100644 src/Specific/solinas32_2e224m2e96p1/feaddDisplay.log create mode 100644 src/Specific/solinas32_2e226m5/feadd.c create mode 100644 src/Specific/solinas32_2e226m5/feaddDisplay.log create mode 100644 src/Specific/solinas32_2e226m5/fesub.c create mode 100644 src/Specific/solinas32_2e226m5/fesubDisplay.log create mode 100644 src/Specific/solinas64_2e369m25/feadd.c create mode 100644 src/Specific/solinas64_2e369m25/feaddDisplay.log create mode 100644 src/Specific/solinas64_2e369m25/fesub.c create mode 100644 src/Specific/solinas64_2e369m25/fesubDisplay.log create mode 100644 src/Specific/solinas64_2e384m2e128m2e96p2e32m1/feadd.c create mode 100644 src/Specific/solinas64_2e384m2e128m2e96p2e32m1/feaddDisplay.log create mode 100644 src/Specific/solinas64_2e384m317/feadd.c create mode 100644 src/Specific/solinas64_2e384m317/feaddDisplay.log create mode 100644 src/Specific/solinas64_2e384m317/fesub.c create mode 100644 src/Specific/solinas64_2e384m317/fesubDisplay.log create mode 100644 src/Specific/solinas64_2e384m5x2e368m1/feadd.c create mode 100644 src/Specific/solinas64_2e384m5x2e368m1/feaddDisplay.log create mode 100644 src/Specific/solinas64_2e384m5x2e368m1/fesub.c create mode 100644 src/Specific/solinas64_2e384m5x2e368m1/fesubDisplay.log create mode 100644 src/Specific/solinas64_2e384m79x2e376m1/feadd.c create mode 100644 src/Specific/solinas64_2e384m79x2e376m1/feaddDisplay.log create mode 100644 src/Specific/solinas64_2e384m79x2e376m1/fesub.c create mode 100644 src/Specific/solinas64_2e384m79x2e376m1/fesubDisplay.log create mode 100644 src/Specific/solinas64_2e401m31/feadd.c create mode 100644 src/Specific/solinas64_2e401m31/feaddDisplay.log create mode 100644 src/Specific/solinas64_2e401m31/fesub.c create mode 100644 src/Specific/solinas64_2e401m31/fesubDisplay.log create mode 100644 src/Specific/solinas64_2e416m2e208m1/feadd.c create mode 100644 src/Specific/solinas64_2e416m2e208m1/feaddDisplay.log create mode 100644 src/Specific/solinas64_2e416m2e208m1/fesub.c create mode 100644 src/Specific/solinas64_2e416m2e208m1/fesubDisplay.log create mode 100644 src/Specific/solinas64_2e444m17/feadd.c create mode 100644 src/Specific/solinas64_2e444m17/feaddDisplay.log create mode 100644 src/Specific/solinas64_2e444m17/fesub.c create mode 100644 src/Specific/solinas64_2e444m17/fesubDisplay.log create mode 100644 src/Specific/solinas64_2e448m2e224m1/feadd.c create mode 100644 src/Specific/solinas64_2e448m2e224m1/feaddDisplay.log create mode 100644 src/Specific/solinas64_2e448m2e224m1/fesub.c create mode 100644 src/Specific/solinas64_2e448m2e224m1/fesubDisplay.log create mode 100644 src/Specific/solinas64_2e450m2e225m1/feadd.c create mode 100644 src/Specific/solinas64_2e450m2e225m1/feaddDisplay.log create mode 100644 src/Specific/solinas64_2e450m2e225m1/fesub.c create mode 100644 src/Specific/solinas64_2e450m2e225m1/fesubDisplay.log create mode 100644 src/Specific/solinas64_2e452m3/feadd.c create mode 100644 src/Specific/solinas64_2e452m3/feaddDisplay.log create mode 100644 src/Specific/solinas64_2e452m3/fesub.c create mode 100644 src/Specific/solinas64_2e452m3/fesubDisplay.log create mode 100644 src/Specific/solinas64_2e468m17/feadd.c create mode 100644 src/Specific/solinas64_2e468m17/feaddDisplay.log create mode 100644 src/Specific/solinas64_2e468m17/fesub.c create mode 100644 src/Specific/solinas64_2e468m17/fesubDisplay.log create mode 100644 src/Specific/solinas64_2e480m2e240m1/feadd.c create mode 100644 src/Specific/solinas64_2e480m2e240m1/feaddDisplay.log create mode 100644 src/Specific/solinas64_2e480m2e240m1/fesub.c create mode 100644 src/Specific/solinas64_2e480m2e240m1/fesubDisplay.log (limited to 'src') diff --git a/src/Specific/solinas32_2e137m13/feadd.c b/src/Specific/solinas32_2e137m13/feadd.c new file mode 100644 index 000000000..cc3671f75 --- /dev/null +++ b/src/Specific/solinas32_2e137m13/feadd.c @@ -0,0 +1,27 @@ +static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) { + { const uint32_t x16 = 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 x30 = in2[7]; + { const uint32_t x31 = in2[6]; + { const uint32_t x29 = in2[5]; + { const uint32_t x27 = in2[4]; + { const uint32_t x25 = in2[3]; + { const uint32_t x23 = in2[2]; + { const uint32_t x21 = in2[1]; + { const uint32_t x19 = in2[0]; + out[0] = (x5 + x19); + out[1] = (x7 + x21); + out[2] = (x9 + x23); + out[3] = (x11 + x25); + out[4] = (x13 + x27); + out[5] = (x15 + x29); + out[6] = (x17 + x31); + out[7] = (x16 + x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e137m13/feaddDisplay.log b/src/Specific/solinas32_2e137m13/feaddDisplay.log new file mode 100644 index 000000000..f25c10903 --- /dev/null +++ b/src/Specific/solinas32_2e137m13/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas32_2e137m13/fesub.c b/src/Specific/solinas32_2e137m13/fesub.c new file mode 100644 index 000000000..e464fe964 --- /dev/null +++ b/src/Specific/solinas32_2e137m13/fesub.c @@ -0,0 +1,27 @@ +static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) { + { const uint32_t x16 = 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 x30 = in2[7]; + { const uint32_t x31 = in2[6]; + { const uint32_t x29 = in2[5]; + { const uint32_t x27 = in2[4]; + { const uint32_t x25 = in2[3]; + { const uint32_t x23 = in2[2]; + { const uint32_t x21 = in2[1]; + { const uint32_t x19 = in2[0]; + out[0] = ((Const 524262 + x5) - x19); + out[1] = ((Const 262142 + x7) - x21); + out[2] = ((Const 262142 + x9) - x23); + out[3] = ((Const 262142 + x11) - x25); + out[4] = ((Const 262142 + x13) - x27); + out[5] = ((Const 262142 + x15) - x29); + out[6] = ((Const 262142 + x17) - x31); + out[7] = ((Const 262142 + x16) - x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e137m13/fesubDisplay.log b/src/Specific/solinas32_2e137m13/fesubDisplay.log new file mode 100644 index 000000000..aa440b343 --- /dev/null +++ b/src/Specific/solinas32_2e137m13/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + (((Const 262142 + x16) - x30), ((Const 262142 + x17) - x31), ((Const 262142 + x15) - x29), ((Const 262142 + x13) - x27), ((Const 262142 + x11) - x25), ((Const 262142 + x9) - x23), ((Const 262142 + x7) - x21), ((Const 524262 + x5) - x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas32_2e192m2e64m1/feadd.c b/src/Specific/solinas32_2e192m2e64m1/feadd.c new file mode 100644 index 000000000..cc3671f75 --- /dev/null +++ b/src/Specific/solinas32_2e192m2e64m1/feadd.c @@ -0,0 +1,27 @@ +static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) { + { const uint32_t x16 = 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 x30 = in2[7]; + { const uint32_t x31 = in2[6]; + { const uint32_t x29 = in2[5]; + { const uint32_t x27 = in2[4]; + { const uint32_t x25 = in2[3]; + { const uint32_t x23 = in2[2]; + { const uint32_t x21 = in2[1]; + { const uint32_t x19 = in2[0]; + out[0] = (x5 + x19); + out[1] = (x7 + x21); + out[2] = (x9 + x23); + out[3] = (x11 + x25); + out[4] = (x13 + x27); + out[5] = (x15 + x29); + out[6] = (x17 + x31); + out[7] = (x16 + x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e192m2e64m1/feaddDisplay.log b/src/Specific/solinas32_2e192m2e64m1/feaddDisplay.log new file mode 100644 index 000000000..f25c10903 --- /dev/null +++ b/src/Specific/solinas32_2e192m2e64m1/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas32_2e192m2e64m1/fesub.c b/src/Specific/solinas32_2e192m2e64m1/fesub.c new file mode 100644 index 000000000..986f1b20c --- /dev/null +++ b/src/Specific/solinas32_2e192m2e64m1/fesub.c @@ -0,0 +1,27 @@ +static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) { + { const uint32_t x16 = 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 x30 = in2[7]; + { const uint32_t x31 = in2[6]; + { const uint32_t x29 = in2[5]; + { const uint32_t x27 = in2[4]; + { const uint32_t x25 = in2[3]; + { const uint32_t x23 = in2[2]; + { const uint32_t x21 = in2[1]; + { const uint32_t x19 = in2[0]; + out[0] = ((0x1fffffe + x5) - x19); + out[1] = ((0x1fffffe + x7) - x21); + out[2] = ((Const 33423358 + x9) - x23); + out[3] = ((0x1fffffe + x11) - x25); + out[4] = ((0x1fffffe + x13) - x27); + out[5] = ((0x1fffffe + x15) - x29); + out[6] = ((0x1fffffe + x17) - x31); + out[7] = ((0x1fffffe + x16) - x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e192m2e64m1/fesubDisplay.log b/src/Specific/solinas32_2e192m2e64m1/fesubDisplay.log new file mode 100644 index 000000000..93429a863 --- /dev/null +++ b/src/Specific/solinas32_2e192m2e64m1/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + (((0x1fffffe + x16) - x30), ((0x1fffffe + x17) - x31), ((0x1fffffe + x15) - x29), ((0x1fffffe + x13) - x27), ((0x1fffffe + x11) - x25), ((Const 33423358 + x9) - x23), ((0x1fffffe + x7) - x21), ((0x1fffffe + x5) - x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas32_2e194m33/feadd.c b/src/Specific/solinas32_2e194m33/feadd.c new file mode 100644 index 000000000..cc3671f75 --- /dev/null +++ b/src/Specific/solinas32_2e194m33/feadd.c @@ -0,0 +1,27 @@ +static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) { + { const uint32_t x16 = 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 x30 = in2[7]; + { const uint32_t x31 = in2[6]; + { const uint32_t x29 = in2[5]; + { const uint32_t x27 = in2[4]; + { const uint32_t x25 = in2[3]; + { const uint32_t x23 = in2[2]; + { const uint32_t x21 = in2[1]; + { const uint32_t x19 = in2[0]; + out[0] = (x5 + x19); + out[1] = (x7 + x21); + out[2] = (x9 + x23); + out[3] = (x11 + x25); + out[4] = (x13 + x27); + out[5] = (x15 + x29); + out[6] = (x17 + x31); + out[7] = (x16 + x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e194m33/feaddDisplay.log b/src/Specific/solinas32_2e194m33/feaddDisplay.log new file mode 100644 index 000000000..f25c10903 --- /dev/null +++ b/src/Specific/solinas32_2e194m33/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas32_2e194m33/fesub.c b/src/Specific/solinas32_2e194m33/fesub.c new file mode 100644 index 000000000..f9a586ca4 --- /dev/null +++ b/src/Specific/solinas32_2e194m33/fesub.c @@ -0,0 +1,27 @@ +static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) { + { const uint32_t x16 = 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 x30 = in2[7]; + { const uint32_t x31 = in2[6]; + { const uint32_t x29 = in2[5]; + { const uint32_t x27 = in2[4]; + { const uint32_t x25 = in2[3]; + { const uint32_t x23 = in2[2]; + { const uint32_t x21 = in2[1]; + { const uint32_t x19 = in2[0]; + out[0] = ((Const 67108798 + x5) - x19); + out[1] = ((0x1fffffe + x7) - x21); + out[2] = ((0x1fffffe + x9) - x23); + out[3] = ((0x1fffffe + x11) - x25); + out[4] = ((0x3fffffe + x13) - x27); + out[5] = ((0x1fffffe + x15) - x29); + out[6] = ((0x1fffffe + x17) - x31); + out[7] = ((0x1fffffe + x16) - x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e194m33/fesubDisplay.log b/src/Specific/solinas32_2e194m33/fesubDisplay.log new file mode 100644 index 000000000..b7d9e6729 --- /dev/null +++ b/src/Specific/solinas32_2e194m33/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + (((0x1fffffe + x16) - x30), ((0x1fffffe + x17) - x31), ((0x1fffffe + x15) - x29), ((0x3fffffe + x13) - x27), ((0x1fffffe + x11) - x25), ((0x1fffffe + x9) - x23), ((0x1fffffe + x7) - x21), ((Const 67108798 + x5) - x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas32_2e212m29/feadd.c b/src/Specific/solinas32_2e212m29/feadd.c new file mode 100644 index 000000000..cc3671f75 --- /dev/null +++ b/src/Specific/solinas32_2e212m29/feadd.c @@ -0,0 +1,27 @@ +static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) { + { const uint32_t x16 = 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 x30 = in2[7]; + { const uint32_t x31 = in2[6]; + { const uint32_t x29 = in2[5]; + { const uint32_t x27 = in2[4]; + { const uint32_t x25 = in2[3]; + { const uint32_t x23 = in2[2]; + { const uint32_t x21 = in2[1]; + { const uint32_t x19 = in2[0]; + out[0] = (x5 + x19); + out[1] = (x7 + x21); + out[2] = (x9 + x23); + out[3] = (x11 + x25); + out[4] = (x13 + x27); + out[5] = (x15 + x29); + out[6] = (x17 + x31); + out[7] = (x16 + x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e212m29/feaddDisplay.log b/src/Specific/solinas32_2e212m29/feaddDisplay.log new file mode 100644 index 000000000..f25c10903 --- /dev/null +++ b/src/Specific/solinas32_2e212m29/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas32_2e212m29/fesub.c b/src/Specific/solinas32_2e212m29/fesub.c new file mode 100644 index 000000000..2742507bf --- /dev/null +++ b/src/Specific/solinas32_2e212m29/fesub.c @@ -0,0 +1,27 @@ +static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) { + { const uint32_t x16 = 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 x30 = in2[7]; + { const uint32_t x31 = in2[6]; + { const uint32_t x29 = in2[5]; + { const uint32_t x27 = in2[4]; + { const uint32_t x25 = in2[3]; + { const uint32_t x23 = in2[2]; + { const uint32_t x21 = in2[1]; + { const uint32_t x19 = in2[0]; + out[0] = ((Const 268435398 + x5) - x19); + out[1] = ((0x7fffffe + x7) - x21); + out[2] = ((0xffffffe + x9) - x23); + out[3] = ((0x7fffffe + x11) - x25); + out[4] = ((0xffffffe + x13) - x27); + out[5] = ((0x7fffffe + x15) - x29); + out[6] = ((0xffffffe + x17) - x31); + out[7] = ((0x7fffffe + x16) - x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e212m29/fesubDisplay.log b/src/Specific/solinas32_2e212m29/fesubDisplay.log new file mode 100644 index 000000000..fd46595d4 --- /dev/null +++ b/src/Specific/solinas32_2e212m29/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + (((0x7fffffe + x16) - x30), ((0xffffffe + x17) - x31), ((0x7fffffe + x15) - x29), ((0xffffffe + x13) - x27), ((0x7fffffe + x11) - x25), ((0xffffffe + x9) - x23), ((0x7fffffe + x7) - x21), ((Const 268435398 + x5) - x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas32_2e216m2e108m1/feadd.c b/src/Specific/solinas32_2e216m2e108m1/feadd.c new file mode 100644 index 000000000..cc3671f75 --- /dev/null +++ b/src/Specific/solinas32_2e216m2e108m1/feadd.c @@ -0,0 +1,27 @@ +static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) { + { const uint32_t x16 = 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 x30 = in2[7]; + { const uint32_t x31 = in2[6]; + { const uint32_t x29 = in2[5]; + { const uint32_t x27 = in2[4]; + { const uint32_t x25 = in2[3]; + { const uint32_t x23 = in2[2]; + { const uint32_t x21 = in2[1]; + { const uint32_t x19 = in2[0]; + out[0] = (x5 + x19); + out[1] = (x7 + x21); + out[2] = (x9 + x23); + out[3] = (x11 + x25); + out[4] = (x13 + x27); + out[5] = (x15 + x29); + out[6] = (x17 + x31); + out[7] = (x16 + x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e216m2e108m1/feaddDisplay.log b/src/Specific/solinas32_2e216m2e108m1/feaddDisplay.log new file mode 100644 index 000000000..f25c10903 --- /dev/null +++ b/src/Specific/solinas32_2e216m2e108m1/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas32_2e216m2e108m1/fesub.c b/src/Specific/solinas32_2e216m2e108m1/fesub.c new file mode 100644 index 000000000..80857a32d --- /dev/null +++ b/src/Specific/solinas32_2e216m2e108m1/fesub.c @@ -0,0 +1,27 @@ +static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) { + { const uint32_t x16 = 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 x30 = in2[7]; + { const uint32_t x31 = in2[6]; + { const uint32_t x29 = in2[5]; + { const uint32_t x27 = in2[4]; + { const uint32_t x25 = in2[3]; + { const uint32_t x23 = in2[2]; + { const uint32_t x21 = in2[1]; + { const uint32_t x19 = in2[0]; + out[0] = ((0xffffffe + x5) - x19); + out[1] = ((0xffffffe + x7) - x21); + out[2] = ((0xffffffe + x9) - x23); + out[3] = ((0xffffffe + x11) - x25); + out[4] = ((Const 268435452 + x13) - x27); + out[5] = ((0xffffffe + x15) - x29); + out[6] = ((0xffffffe + x17) - x31); + out[7] = ((0xffffffe + x16) - x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e216m2e108m1/fesubDisplay.log b/src/Specific/solinas32_2e216m2e108m1/fesubDisplay.log new file mode 100644 index 000000000..cbd824a7d --- /dev/null +++ b/src/Specific/solinas32_2e216m2e108m1/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + (((0xffffffe + x16) - x30), ((0xffffffe + x17) - x31), ((0xffffffe + x15) - x29), ((Const 268435452 + x13) - x27), ((0xffffffe + x11) - x25), ((0xffffffe + x9) - x23), ((0xffffffe + x7) - x21), ((0xffffffe + x5) - x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas32_2e224m2e96p1/feadd.c b/src/Specific/solinas32_2e224m2e96p1/feadd.c new file mode 100644 index 000000000..cc3671f75 --- /dev/null +++ b/src/Specific/solinas32_2e224m2e96p1/feadd.c @@ -0,0 +1,27 @@ +static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) { + { const uint32_t x16 = 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 x30 = in2[7]; + { const uint32_t x31 = in2[6]; + { const uint32_t x29 = in2[5]; + { const uint32_t x27 = in2[4]; + { const uint32_t x25 = in2[3]; + { const uint32_t x23 = in2[2]; + { const uint32_t x21 = in2[1]; + { const uint32_t x19 = in2[0]; + out[0] = (x5 + x19); + out[1] = (x7 + x21); + out[2] = (x9 + x23); + out[3] = (x11 + x25); + out[4] = (x13 + x27); + out[5] = (x15 + x29); + out[6] = (x17 + x31); + out[7] = (x16 + x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e224m2e96p1/feaddDisplay.log b/src/Specific/solinas32_2e224m2e96p1/feaddDisplay.log new file mode 100644 index 000000000..f25c10903 --- /dev/null +++ b/src/Specific/solinas32_2e224m2e96p1/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas32_2e226m5/feadd.c b/src/Specific/solinas32_2e226m5/feadd.c new file mode 100644 index 000000000..cc3671f75 --- /dev/null +++ b/src/Specific/solinas32_2e226m5/feadd.c @@ -0,0 +1,27 @@ +static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) { + { const uint32_t x16 = 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 x30 = in2[7]; + { const uint32_t x31 = in2[6]; + { const uint32_t x29 = in2[5]; + { const uint32_t x27 = in2[4]; + { const uint32_t x25 = in2[3]; + { const uint32_t x23 = in2[2]; + { const uint32_t x21 = in2[1]; + { const uint32_t x19 = in2[0]; + out[0] = (x5 + x19); + out[1] = (x7 + x21); + out[2] = (x9 + x23); + out[3] = (x11 + x25); + out[4] = (x13 + x27); + out[5] = (x15 + x29); + out[6] = (x17 + x31); + out[7] = (x16 + x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e226m5/feaddDisplay.log b/src/Specific/solinas32_2e226m5/feaddDisplay.log new file mode 100644 index 000000000..f25c10903 --- /dev/null +++ b/src/Specific/solinas32_2e226m5/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas32_2e226m5/fesub.c b/src/Specific/solinas32_2e226m5/fesub.c new file mode 100644 index 000000000..c04b22700 --- /dev/null +++ b/src/Specific/solinas32_2e226m5/fesub.c @@ -0,0 +1,27 @@ +static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) { + { const uint32_t x16 = 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 x30 = in2[7]; + { const uint32_t x31 = in2[6]; + { const uint32_t x29 = in2[5]; + { const uint32_t x27 = in2[4]; + { const uint32_t x25 = in2[3]; + { const uint32_t x23 = in2[2]; + { const uint32_t x21 = in2[1]; + { const uint32_t x19 = in2[0]; + out[0] = ((Const 1073741814 + x5) - x19); + out[1] = ((0x1ffffffe + x7) - x21); + out[2] = ((0x1ffffffe + x9) - x23); + out[3] = ((0x1ffffffe + x11) - x25); + out[4] = ((0x3ffffffe + x13) - x27); + out[5] = ((0x1ffffffe + x15) - x29); + out[6] = ((0x1ffffffe + x17) - x31); + out[7] = ((0x1ffffffe + x16) - x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas32_2e226m5/fesubDisplay.log b/src/Specific/solinas32_2e226m5/fesubDisplay.log new file mode 100644 index 000000000..3c74d260d --- /dev/null +++ b/src/Specific/solinas32_2e226m5/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + (((0x1ffffffe + x16) - x30), ((0x1ffffffe + x17) - x31), ((0x1ffffffe + x15) - x29), ((0x3ffffffe + x13) - x27), ((0x1ffffffe + x11) - x25), ((0x1ffffffe + x9) - x23), ((0x1ffffffe + x7) - x21), ((Const 1073741814 + x5) - x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e369m25/feadd.c b/src/Specific/solinas64_2e369m25/feadd.c new file mode 100644 index 000000000..4def6ee9c --- /dev/null +++ b/src/Specific/solinas64_2e369m25/feadd.c @@ -0,0 +1,27 @@ +static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = (x5 + x19); + out[1] = (x7 + x21); + out[2] = (x9 + x23); + out[3] = (x11 + x25); + out[4] = (x13 + x27); + out[5] = (x15 + x29); + out[6] = (x17 + x31); + out[7] = (x16 + x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e369m25/feaddDisplay.log b/src/Specific/solinas64_2e369m25/feaddDisplay.log new file mode 100644 index 000000000..023fc8a31 --- /dev/null +++ b/src/Specific/solinas64_2e369m25/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e369m25/fesub.c b/src/Specific/solinas64_2e369m25/fesub.c new file mode 100644 index 000000000..3f3f3bea4 --- /dev/null +++ b/src/Specific/solinas64_2e369m25/fesub.c @@ -0,0 +1,27 @@ +static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = ((Const 281474976710606 + x5) - x19); + out[1] = ((0x7ffffffffffe + x7) - x21); + out[2] = ((0x7ffffffffffe + x9) - x23); + out[3] = ((0x7ffffffffffe + x11) - x25); + out[4] = ((0x7ffffffffffe + x13) - x27); + out[5] = ((0x7ffffffffffe + x15) - x29); + out[6] = ((0x7ffffffffffe + x17) - x31); + out[7] = ((0x7ffffffffffe + x16) - x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e369m25/fesubDisplay.log b/src/Specific/solinas64_2e369m25/fesubDisplay.log new file mode 100644 index 000000000..7f6742d9b --- /dev/null +++ b/src/Specific/solinas64_2e369m25/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + (((0x7ffffffffffe + x16) - x30), ((0x7ffffffffffe + x17) - x31), ((0x7ffffffffffe + x15) - x29), ((0x7ffffffffffe + x13) - x27), ((0x7ffffffffffe + x11) - x25), ((0x7ffffffffffe + x9) - x23), ((0x7ffffffffffe + x7) - x21), ((Const 281474976710606 + x5) - x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1/feadd.c b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1/feadd.c new file mode 100644 index 000000000..4def6ee9c --- /dev/null +++ b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1/feadd.c @@ -0,0 +1,27 @@ +static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = (x5 + x19); + out[1] = (x7 + x21); + out[2] = (x9 + x23); + out[3] = (x11 + x25); + out[4] = (x13 + x27); + out[5] = (x15 + x29); + out[6] = (x17 + x31); + out[7] = (x16 + x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1/feaddDisplay.log b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1/feaddDisplay.log new file mode 100644 index 000000000..023fc8a31 --- /dev/null +++ b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e384m317/feadd.c b/src/Specific/solinas64_2e384m317/feadd.c new file mode 100644 index 000000000..4def6ee9c --- /dev/null +++ b/src/Specific/solinas64_2e384m317/feadd.c @@ -0,0 +1,27 @@ +static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = (x5 + x19); + out[1] = (x7 + x21); + out[2] = (x9 + x23); + out[3] = (x11 + x25); + out[4] = (x13 + x27); + out[5] = (x15 + x29); + out[6] = (x17 + x31); + out[7] = (x16 + x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e384m317/feaddDisplay.log b/src/Specific/solinas64_2e384m317/feaddDisplay.log new file mode 100644 index 000000000..023fc8a31 --- /dev/null +++ b/src/Specific/solinas64_2e384m317/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e384m317/fesub.c b/src/Specific/solinas64_2e384m317/fesub.c new file mode 100644 index 000000000..c0af3d09b --- /dev/null +++ b/src/Specific/solinas64_2e384m317/fesub.c @@ -0,0 +1,27 @@ +static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = ((Const 562949953420678 + x5) - x19); + out[1] = ((0x1fffffffffffe + x7) - x21); + out[2] = ((0x1fffffffffffe + x9) - x23); + out[3] = ((0x1fffffffffffe + x11) - x25); + out[4] = ((0x1fffffffffffe + x13) - x27); + out[5] = ((0x1fffffffffffe + x15) - x29); + out[6] = ((0x1fffffffffffe + x17) - x31); + out[7] = ((0x1fffffffffffe + x16) - x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e384m317/fesubDisplay.log b/src/Specific/solinas64_2e384m317/fesubDisplay.log new file mode 100644 index 000000000..da6d96576 --- /dev/null +++ b/src/Specific/solinas64_2e384m317/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + (((0x1fffffffffffe + x16) - x30), ((0x1fffffffffffe + x17) - x31), ((0x1fffffffffffe + x15) - x29), ((0x1fffffffffffe + x13) - x27), ((0x1fffffffffffe + x11) - x25), ((0x1fffffffffffe + x9) - x23), ((0x1fffffffffffe + x7) - x21), ((Const 562949953420678 + x5) - x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e384m5x2e368m1/feadd.c b/src/Specific/solinas64_2e384m5x2e368m1/feadd.c new file mode 100644 index 000000000..4def6ee9c --- /dev/null +++ b/src/Specific/solinas64_2e384m5x2e368m1/feadd.c @@ -0,0 +1,27 @@ +static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = (x5 + x19); + out[1] = (x7 + x21); + out[2] = (x9 + x23); + out[3] = (x11 + x25); + out[4] = (x13 + x27); + out[5] = (x15 + x29); + out[6] = (x17 + x31); + out[7] = (x16 + x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e384m5x2e368m1/feaddDisplay.log b/src/Specific/solinas64_2e384m5x2e368m1/feaddDisplay.log new file mode 100644 index 000000000..023fc8a31 --- /dev/null +++ b/src/Specific/solinas64_2e384m5x2e368m1/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e384m5x2e368m1/fesub.c b/src/Specific/solinas64_2e384m5x2e368m1/fesub.c new file mode 100644 index 000000000..4d7a2ddb0 --- /dev/null +++ b/src/Specific/solinas64_2e384m5x2e368m1/fesub.c @@ -0,0 +1,27 @@ +static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = ((0x1fffffffffffe + x5) - x19); + out[1] = ((0x1fffffffffffe + x7) - x21); + out[2] = ((0x1fffffffffffe + x9) - x23); + out[3] = ((0x1fffffffffffe + x11) - x25); + out[4] = ((0x1fffffffffffe + x13) - x27); + out[5] = ((0x1fffffffffffe + x15) - x29); + out[6] = ((0x1fffffffffffe + x17) - x31); + out[7] = ((Const 562907003748350 + x16) - x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e384m5x2e368m1/fesubDisplay.log b/src/Specific/solinas64_2e384m5x2e368m1/fesubDisplay.log new file mode 100644 index 000000000..ed106a446 --- /dev/null +++ b/src/Specific/solinas64_2e384m5x2e368m1/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + (((Const 562907003748350 + x16) - x30), ((0x1fffffffffffe + x17) - x31), ((0x1fffffffffffe + x15) - x29), ((0x1fffffffffffe + x13) - x27), ((0x1fffffffffffe + x11) - x25), ((0x1fffffffffffe + x9) - x23), ((0x1fffffffffffe + x7) - x21), ((0x1fffffffffffe + x5) - x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e384m79x2e376m1/feadd.c b/src/Specific/solinas64_2e384m79x2e376m1/feadd.c new file mode 100644 index 000000000..4def6ee9c --- /dev/null +++ b/src/Specific/solinas64_2e384m79x2e376m1/feadd.c @@ -0,0 +1,27 @@ +static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = (x5 + x19); + out[1] = (x7 + x21); + out[2] = (x9 + x23); + out[3] = (x11 + x25); + out[4] = (x13 + x27); + out[5] = (x15 + x29); + out[6] = (x17 + x31); + out[7] = (x16 + x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e384m79x2e376m1/feaddDisplay.log b/src/Specific/solinas64_2e384m79x2e376m1/feaddDisplay.log new file mode 100644 index 000000000..023fc8a31 --- /dev/null +++ b/src/Specific/solinas64_2e384m79x2e376m1/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e384m79x2e376m1/fesub.c b/src/Specific/solinas64_2e384m79x2e376m1/fesub.c new file mode 100644 index 000000000..a69e542b4 --- /dev/null +++ b/src/Specific/solinas64_2e384m79x2e376m1/fesub.c @@ -0,0 +1,27 @@ +static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = ((0x1fffffffffffe + x5) - x19); + out[1] = ((0x1fffffffffffe + x7) - x21); + out[2] = ((0x1fffffffffffe + x9) - x23); + out[3] = ((0x1fffffffffffe + x11) - x25); + out[4] = ((0x1fffffffffffe + x13) - x27); + out[5] = ((0x1fffffffffffe + x15) - x29); + out[6] = ((0x1fffffffffffe + x17) - x31); + out[7] = ((Const 389227116232702 + x16) - x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e384m79x2e376m1/fesubDisplay.log b/src/Specific/solinas64_2e384m79x2e376m1/fesubDisplay.log new file mode 100644 index 000000000..5d18bbb73 --- /dev/null +++ b/src/Specific/solinas64_2e384m79x2e376m1/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + (((Const 389227116232702 + x16) - x30), ((0x1fffffffffffe + x17) - x31), ((0x1fffffffffffe + x15) - x29), ((0x1fffffffffffe + x13) - x27), ((0x1fffffffffffe + x11) - x25), ((0x1fffffffffffe + x9) - x23), ((0x1fffffffffffe + x7) - x21), ((0x1fffffffffffe + x5) - x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e401m31/feadd.c b/src/Specific/solinas64_2e401m31/feadd.c new file mode 100644 index 000000000..4def6ee9c --- /dev/null +++ b/src/Specific/solinas64_2e401m31/feadd.c @@ -0,0 +1,27 @@ +static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = (x5 + x19); + out[1] = (x7 + x21); + out[2] = (x9 + x23); + out[3] = (x11 + x25); + out[4] = (x13 + x27); + out[5] = (x15 + x29); + out[6] = (x17 + x31); + out[7] = (x16 + x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e401m31/feaddDisplay.log b/src/Specific/solinas64_2e401m31/feaddDisplay.log new file mode 100644 index 000000000..023fc8a31 --- /dev/null +++ b/src/Specific/solinas64_2e401m31/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e401m31/fesub.c b/src/Specific/solinas64_2e401m31/fesub.c new file mode 100644 index 000000000..63517697f --- /dev/null +++ b/src/Specific/solinas64_2e401m31/fesub.c @@ -0,0 +1,27 @@ +static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = ((Const 4503599627370434 + x5) - x19); + out[1] = ((0x7fffffffffffe + x7) - x21); + out[2] = ((0x7fffffffffffe + x9) - x23); + out[3] = ((0x7fffffffffffe + x11) - x25); + out[4] = ((0x7fffffffffffe + x13) - x27); + out[5] = ((0x7fffffffffffe + x15) - x29); + out[6] = ((0x7fffffffffffe + x17) - x31); + out[7] = ((0x7fffffffffffe + x16) - x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e401m31/fesubDisplay.log b/src/Specific/solinas64_2e401m31/fesubDisplay.log new file mode 100644 index 000000000..f9b5ffa72 --- /dev/null +++ b/src/Specific/solinas64_2e401m31/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + (((0x7fffffffffffe + x16) - x30), ((0x7fffffffffffe + x17) - x31), ((0x7fffffffffffe + x15) - x29), ((0x7fffffffffffe + x13) - x27), ((0x7fffffffffffe + x11) - x25), ((0x7fffffffffffe + x9) - x23), ((0x7fffffffffffe + x7) - x21), ((Const 4503599627370434 + x5) - x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e416m2e208m1/feadd.c b/src/Specific/solinas64_2e416m2e208m1/feadd.c new file mode 100644 index 000000000..4def6ee9c --- /dev/null +++ b/src/Specific/solinas64_2e416m2e208m1/feadd.c @@ -0,0 +1,27 @@ +static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = (x5 + x19); + out[1] = (x7 + x21); + out[2] = (x9 + x23); + out[3] = (x11 + x25); + out[4] = (x13 + x27); + out[5] = (x15 + x29); + out[6] = (x17 + x31); + out[7] = (x16 + x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e416m2e208m1/feaddDisplay.log b/src/Specific/solinas64_2e416m2e208m1/feaddDisplay.log new file mode 100644 index 000000000..023fc8a31 --- /dev/null +++ b/src/Specific/solinas64_2e416m2e208m1/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e416m2e208m1/fesub.c b/src/Specific/solinas64_2e416m2e208m1/fesub.c new file mode 100644 index 000000000..43c085846 --- /dev/null +++ b/src/Specific/solinas64_2e416m2e208m1/fesub.c @@ -0,0 +1,27 @@ +static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = ((0x1ffffffffffffe + x5) - x19); + out[1] = ((0x1ffffffffffffe + x7) - x21); + out[2] = ((0x1ffffffffffffe + x9) - x23); + out[3] = ((0x1ffffffffffffe + x11) - x25); + out[4] = ((Const 9007199254740988 + x13) - x27); + out[5] = ((0x1ffffffffffffe + x15) - x29); + out[6] = ((0x1ffffffffffffe + x17) - x31); + out[7] = ((0x1ffffffffffffe + x16) - x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e416m2e208m1/fesubDisplay.log b/src/Specific/solinas64_2e416m2e208m1/fesubDisplay.log new file mode 100644 index 000000000..837a44010 --- /dev/null +++ b/src/Specific/solinas64_2e416m2e208m1/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + (((0x1ffffffffffffe + x16) - x30), ((0x1ffffffffffffe + x17) - x31), ((0x1ffffffffffffe + x15) - x29), ((Const 9007199254740988 + x13) - x27), ((0x1ffffffffffffe + x11) - x25), ((0x1ffffffffffffe + x9) - x23), ((0x1ffffffffffffe + x7) - x21), ((0x1ffffffffffffe + x5) - x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e444m17/feadd.c b/src/Specific/solinas64_2e444m17/feadd.c new file mode 100644 index 000000000..4def6ee9c --- /dev/null +++ b/src/Specific/solinas64_2e444m17/feadd.c @@ -0,0 +1,27 @@ +static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = (x5 + x19); + out[1] = (x7 + x21); + out[2] = (x9 + x23); + out[3] = (x11 + x25); + out[4] = (x13 + x27); + out[5] = (x15 + x29); + out[6] = (x17 + x31); + out[7] = (x16 + x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e444m17/feaddDisplay.log b/src/Specific/solinas64_2e444m17/feaddDisplay.log new file mode 100644 index 000000000..023fc8a31 --- /dev/null +++ b/src/Specific/solinas64_2e444m17/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e444m17/fesub.c b/src/Specific/solinas64_2e444m17/fesub.c new file mode 100644 index 000000000..2fdfd6d8c --- /dev/null +++ b/src/Specific/solinas64_2e444m17/fesub.c @@ -0,0 +1,27 @@ +static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = ((0x1ffffffffffffde + x5) - x19); + out[1] = ((0xfffffffffffffe + x7) - x21); + out[2] = ((0x1fffffffffffffe + x9) - x23); + out[3] = ((0xfffffffffffffe + x11) - x25); + out[4] = ((0x1fffffffffffffe + x13) - x27); + out[5] = ((0xfffffffffffffe + x15) - x29); + out[6] = ((0x1fffffffffffffe + x17) - x31); + out[7] = ((0xfffffffffffffe + x16) - x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e444m17/fesubDisplay.log b/src/Specific/solinas64_2e444m17/fesubDisplay.log new file mode 100644 index 000000000..5278335c6 --- /dev/null +++ b/src/Specific/solinas64_2e444m17/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + (((0xfffffffffffffe + x16) - x30), ((0x1fffffffffffffe + x17) - x31), ((0xfffffffffffffe + x15) - x29), ((0x1fffffffffffffe + x13) - x27), ((0xfffffffffffffe + x11) - x25), ((0x1fffffffffffffe + x9) - x23), ((0xfffffffffffffe + x7) - x21), ((0x1ffffffffffffde + x5) - x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e448m2e224m1/feadd.c b/src/Specific/solinas64_2e448m2e224m1/feadd.c new file mode 100644 index 000000000..4def6ee9c --- /dev/null +++ b/src/Specific/solinas64_2e448m2e224m1/feadd.c @@ -0,0 +1,27 @@ +static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = (x5 + x19); + out[1] = (x7 + x21); + out[2] = (x9 + x23); + out[3] = (x11 + x25); + out[4] = (x13 + x27); + out[5] = (x15 + x29); + out[6] = (x17 + x31); + out[7] = (x16 + x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e448m2e224m1/feaddDisplay.log b/src/Specific/solinas64_2e448m2e224m1/feaddDisplay.log new file mode 100644 index 000000000..023fc8a31 --- /dev/null +++ b/src/Specific/solinas64_2e448m2e224m1/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e448m2e224m1/fesub.c b/src/Specific/solinas64_2e448m2e224m1/fesub.c new file mode 100644 index 000000000..f32f26304 --- /dev/null +++ b/src/Specific/solinas64_2e448m2e224m1/fesub.c @@ -0,0 +1,27 @@ +static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = ((0x1fffffffffffffe + x5) - x19); + out[1] = ((0x1fffffffffffffe + x7) - x21); + out[2] = ((0x1fffffffffffffe + x9) - x23); + out[3] = ((0x1fffffffffffffe + x11) - x25); + out[4] = ((Const 144115188075855868 + x13) - x27); + out[5] = ((0x1fffffffffffffe + x15) - x29); + out[6] = ((0x1fffffffffffffe + x17) - x31); + out[7] = ((0x1fffffffffffffe + x16) - x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e448m2e224m1/fesubDisplay.log b/src/Specific/solinas64_2e448m2e224m1/fesubDisplay.log new file mode 100644 index 000000000..3d058aa10 --- /dev/null +++ b/src/Specific/solinas64_2e448m2e224m1/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + (((0x1fffffffffffffe + x16) - x30), ((0x1fffffffffffffe + x17) - x31), ((0x1fffffffffffffe + x15) - x29), ((Const 144115188075855868 + x13) - x27), ((0x1fffffffffffffe + x11) - x25), ((0x1fffffffffffffe + x9) - x23), ((0x1fffffffffffffe + x7) - x21), ((0x1fffffffffffffe + x5) - x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e450m2e225m1/feadd.c b/src/Specific/solinas64_2e450m2e225m1/feadd.c new file mode 100644 index 000000000..4def6ee9c --- /dev/null +++ b/src/Specific/solinas64_2e450m2e225m1/feadd.c @@ -0,0 +1,27 @@ +static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = (x5 + x19); + out[1] = (x7 + x21); + out[2] = (x9 + x23); + out[3] = (x11 + x25); + out[4] = (x13 + x27); + out[5] = (x15 + x29); + out[6] = (x17 + x31); + out[7] = (x16 + x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e450m2e225m1/feaddDisplay.log b/src/Specific/solinas64_2e450m2e225m1/feaddDisplay.log new file mode 100644 index 000000000..023fc8a31 --- /dev/null +++ b/src/Specific/solinas64_2e450m2e225m1/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e450m2e225m1/fesub.c b/src/Specific/solinas64_2e450m2e225m1/fesub.c new file mode 100644 index 000000000..ae68d0af0 --- /dev/null +++ b/src/Specific/solinas64_2e450m2e225m1/fesub.c @@ -0,0 +1,27 @@ +static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = ((0x3fffffffffffffe + x5) - x19); + out[1] = ((0x1fffffffffffffe + x7) - x21); + out[2] = ((0x1fffffffffffffe + x9) - x23); + out[3] = ((0x1fffffffffffffe + x11) - x25); + out[4] = ((Const 288230376151711740 + x13) - x27); + out[5] = ((0x1fffffffffffffe + x15) - x29); + out[6] = ((0x1fffffffffffffe + x17) - x31); + out[7] = ((0x1fffffffffffffe + x16) - x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e450m2e225m1/fesubDisplay.log b/src/Specific/solinas64_2e450m2e225m1/fesubDisplay.log new file mode 100644 index 000000000..31744190d --- /dev/null +++ b/src/Specific/solinas64_2e450m2e225m1/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + (((0x1fffffffffffffe + x16) - x30), ((0x1fffffffffffffe + x17) - x31), ((0x1fffffffffffffe + x15) - x29), ((Const 288230376151711740 + x13) - x27), ((0x1fffffffffffffe + x11) - x25), ((0x1fffffffffffffe + x9) - x23), ((0x1fffffffffffffe + x7) - x21), ((0x3fffffffffffffe + x5) - x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e452m3/feadd.c b/src/Specific/solinas64_2e452m3/feadd.c new file mode 100644 index 000000000..4def6ee9c --- /dev/null +++ b/src/Specific/solinas64_2e452m3/feadd.c @@ -0,0 +1,27 @@ +static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = (x5 + x19); + out[1] = (x7 + x21); + out[2] = (x9 + x23); + out[3] = (x11 + x25); + out[4] = (x13 + x27); + out[5] = (x15 + x29); + out[6] = (x17 + x31); + out[7] = (x16 + x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e452m3/feaddDisplay.log b/src/Specific/solinas64_2e452m3/feaddDisplay.log new file mode 100644 index 000000000..023fc8a31 --- /dev/null +++ b/src/Specific/solinas64_2e452m3/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e452m3/fesub.c b/src/Specific/solinas64_2e452m3/fesub.c new file mode 100644 index 000000000..e9ddd2d0f --- /dev/null +++ b/src/Specific/solinas64_2e452m3/fesub.c @@ -0,0 +1,27 @@ +static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = ((Const 288230376151711738 + x5) - x19); + out[1] = ((0x1fffffffffffffe + x7) - x21); + out[2] = ((0x3fffffffffffffe + x9) - x23); + out[3] = ((0x1fffffffffffffe + x11) - x25); + out[4] = ((0x3fffffffffffffe + x13) - x27); + out[5] = ((0x1fffffffffffffe + x15) - x29); + out[6] = ((0x3fffffffffffffe + x17) - x31); + out[7] = ((0x1fffffffffffffe + x16) - x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e452m3/fesubDisplay.log b/src/Specific/solinas64_2e452m3/fesubDisplay.log new file mode 100644 index 000000000..e7f440eb6 --- /dev/null +++ b/src/Specific/solinas64_2e452m3/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + (((0x1fffffffffffffe + x16) - x30), ((0x3fffffffffffffe + x17) - x31), ((0x1fffffffffffffe + x15) - x29), ((0x3fffffffffffffe + x13) - x27), ((0x1fffffffffffffe + x11) - x25), ((0x3fffffffffffffe + x9) - x23), ((0x1fffffffffffffe + x7) - x21), ((Const 288230376151711738 + x5) - x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e468m17/feadd.c b/src/Specific/solinas64_2e468m17/feadd.c new file mode 100644 index 000000000..4def6ee9c --- /dev/null +++ b/src/Specific/solinas64_2e468m17/feadd.c @@ -0,0 +1,27 @@ +static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = (x5 + x19); + out[1] = (x7 + x21); + out[2] = (x9 + x23); + out[3] = (x11 + x25); + out[4] = (x13 + x27); + out[5] = (x15 + x29); + out[6] = (x17 + x31); + out[7] = (x16 + x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e468m17/feaddDisplay.log b/src/Specific/solinas64_2e468m17/feaddDisplay.log new file mode 100644 index 000000000..023fc8a31 --- /dev/null +++ b/src/Specific/solinas64_2e468m17/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e468m17/fesub.c b/src/Specific/solinas64_2e468m17/fesub.c new file mode 100644 index 000000000..5a6b40603 --- /dev/null +++ b/src/Specific/solinas64_2e468m17/fesub.c @@ -0,0 +1,27 @@ +static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = ((Const 1152921504606846942 + x5) - x19); + out[1] = ((0x7fffffffffffffe + x7) - x21); + out[2] = ((0xffffffffffffffe + x9) - x23); + out[3] = ((0x7fffffffffffffe + x11) - x25); + out[4] = ((0xffffffffffffffe + x13) - x27); + out[5] = ((0x7fffffffffffffe + x15) - x29); + out[6] = ((0xffffffffffffffe + x17) - x31); + out[7] = ((0x7fffffffffffffe + x16) - x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e468m17/fesubDisplay.log b/src/Specific/solinas64_2e468m17/fesubDisplay.log new file mode 100644 index 000000000..f67353a39 --- /dev/null +++ b/src/Specific/solinas64_2e468m17/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + (((0x7fffffffffffffe + x16) - x30), ((0xffffffffffffffe + x17) - x31), ((0x7fffffffffffffe + x15) - x29), ((0xffffffffffffffe + x13) - x27), ((0x7fffffffffffffe + x11) - x25), ((0xffffffffffffffe + x9) - x23), ((0x7fffffffffffffe + x7) - x21), ((Const 1152921504606846942 + x5) - x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e480m2e240m1/feadd.c b/src/Specific/solinas64_2e480m2e240m1/feadd.c new file mode 100644 index 000000000..4def6ee9c --- /dev/null +++ b/src/Specific/solinas64_2e480m2e240m1/feadd.c @@ -0,0 +1,27 @@ +static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = (x5 + x19); + out[1] = (x7 + x21); + out[2] = (x9 + x23); + out[3] = (x11 + x25); + out[4] = (x13 + x27); + out[5] = (x15 + x29); + out[6] = (x17 + x31); + out[7] = (x16 + x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e480m2e240m1/feaddDisplay.log b/src/Specific/solinas64_2e480m2e240m1/feaddDisplay.log new file mode 100644 index 000000000..023fc8a31 --- /dev/null +++ b/src/Specific/solinas64_2e480m2e240m1/feaddDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19))) +(x, x0)%core + : 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) diff --git a/src/Specific/solinas64_2e480m2e240m1/fesub.c b/src/Specific/solinas64_2e480m2e240m1/fesub.c new file mode 100644 index 000000000..cd4380002 --- /dev/null +++ b/src/Specific/solinas64_2e480m2e240m1/fesub.c @@ -0,0 +1,27 @@ +static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) { + { const uint64_t x16 = 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 x30 = in2[7]; + { const uint64_t x31 = in2[6]; + { const uint64_t x29 = in2[5]; + { const uint64_t x27 = in2[4]; + { const uint64_t x25 = in2[3]; + { const uint64_t x23 = in2[2]; + { const uint64_t x21 = in2[1]; + { const uint64_t x19 = in2[0]; + out[0] = ((Const 2305843009213693950 + x5) - x19); + out[1] = ((Const 2305843009213693950 + x7) - x21); + out[2] = ((Const 2305843009213693950 + x9) - x23); + out[3] = ((Const 2305843009213693950 + x11) - x25); + out[4] = ((Const 2305843009213693948 + x13) - x27); + out[5] = ((Const 2305843009213693950 + x15) - x29); + out[6] = ((Const 2305843009213693950 + x17) - x31); + out[7] = ((Const 2305843009213693950 + x16) - x30); + }}}}}}}}}}}}}}}} +} diff --git a/src/Specific/solinas64_2e480m2e240m1/fesubDisplay.log b/src/Specific/solinas64_2e480m2e240m1/fesubDisplay.log new file mode 100644 index 000000000..092044bb9 --- /dev/null +++ b/src/Specific/solinas64_2e480m2e240m1/fesubDisplay.log @@ -0,0 +1,7 @@ +λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core, + (((Const 2305843009213693950 + x16) - x30), ((Const 2305843009213693950 + x17) - x31), ((Const 2305843009213693950 + x15) - x29), ((Const 2305843009213693948 + x13) - x27), ((Const 2305843009213693950 + x11) - x25), ((Const 2305843009213693950 + x9) - x23), ((Const 2305843009213693950 + x7) - x21), ((Const 2305843009213693950 + x5) - x19))) +(x, x0)%core + : 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) -- cgit v1.2.3