diff options
author | Jason Gross <jgross@mit.edu> | 2017-11-12 23:35:43 -0500 |
---|---|---|
committer | Jason Gross <jgross@mit.edu> | 2017-11-12 23:35:43 -0500 |
commit | b671976eb2364b6d41cc3e450c2570558a0161ec (patch) | |
tree | 398df5d4e8c7149c9ba902b37cf42e120d07dedb /src/Specific/solinas64_2e256m4294968273_10limbs | |
parent | a66e617f17fab0360ae52b896e5afc5fafc90902 (diff) |
Update display logs and c files
Diffstat (limited to 'src/Specific/solinas64_2e256m4294968273_10limbs')
8 files changed, 51 insertions, 51 deletions
diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/femul.c b/src/Specific/solinas64_2e256m4294968273_10limbs/femul.c index d094ad2a5..2ec0954ba 100644 --- a/src/Specific/solinas64_2e256m4294968273_10limbs/femul.c +++ b/src/Specific/solinas64_2e256m4294968273_10limbs/femul.c @@ -20,15 +20,15 @@ static void femul(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[1 { const uint64_t x25 = in2[1]; { const uint64_t x23 = in2[0]; { uint64_t x40 = ((x5 * x38) + ((x7 * x39) + ((0x2 * (x9 * x37)) + ((x11 * x35) + ((x13 * x33) + ((x15 * x31) + ((x17 * x29) + ((0x2 * (x19 * x27)) + ((x21 * x25) + (x20 * x23)))))))))); - { uint128_t x41 = (((x5 * x39) + ((0x2 * (x7 * x37)) + ((0x2 * (x9 * x35)) + ((x11 * x33) + ((0x2 * (x13 * x31)) + ((x15 * x29) + ((0x2 * (x17 * x27)) + ((0x2 * (x19 * x25)) + (x21 * x23))))))))) + ((uint128_t)(Const 4294968273) * (0x2 * (x20 * x38)))); - { uint128_t x42 = (((x5 * x37) + ((x7 * x35) + ((x9 * x33) + ((x11 * x31) + ((x13 * x29) + ((x15 * x27) + ((x17 * x25) + (x19 * x23)))))))) + ((uint128_t)(Const 4294968273) * ((x21 * x38) + (x20 * x39)))); - { uint128_t x43 = (((x5 * x35) + ((x7 * x33) + ((0x2 * (x9 * x31)) + ((x11 * x29) + ((0x2 * (x13 * x27)) + ((x15 * x25) + (x17 * x23))))))) + ((uint128_t)(Const 4294968273) * ((0x2 * (x19 * x38)) + ((x21 * x39) + (0x2 * (x20 * x37)))))); - { uint128_t x44 = (((x5 * x33) + ((0x2 * (x7 * x31)) + ((0x2 * (x9 * x29)) + ((0x2 * (x11 * x27)) + ((0x2 * (x13 * x25)) + (x15 * x23)))))) + ((uint128_t)(Const 4294968273) * ((0x2 * (x17 * x38)) + ((0x2 * (x19 * x39)) + ((0x2 * (x21 * x37)) + (0x2 * (x20 * x35))))))); - { uint128_t x45 = (((x5 * x31) + ((x7 * x29) + ((0x2 * (x9 * x27)) + ((x11 * x25) + (x13 * x23))))) + ((uint128_t)(Const 4294968273) * ((x15 * x38) + ((x17 * x39) + ((0x2 * (x19 * x37)) + ((x21 * x35) + (x20 * x33))))))); - { uint128_t x46 = (((x5 * x29) + ((0x2 * (x7 * x27)) + ((0x2 * (x9 * x25)) + (x11 * x23)))) + ((uint128_t)(Const 4294968273) * ((0x2 * (x13 * x38)) + ((x15 * x39) + ((0x2 * (x17 * x37)) + ((0x2 * (x19 * x35)) + ((x21 * x33) + (0x2 * (x20 * x31))))))))); - { uint128_t x47 = (((x5 * x27) + ((x7 * x25) + (x9 * x23))) + ((uint128_t)(Const 4294968273) * ((x11 * x38) + ((x13 * x39) + ((x15 * x37) + ((x17 * x35) + ((x19 * x33) + ((x21 * x31) + (x20 * x29))))))))); - { uint128_t x48 = (((x5 * x25) + (x7 * x23)) + ((uint128_t)(Const 4294968273) * ((0x2 * (x9 * x38)) + ((x11 * x39) + ((0x2 * (x13 * x37)) + ((x15 * x35) + ((x17 * x33) + ((0x2 * (x19 * x31)) + ((x21 * x29) + (0x2 * (x20 * x27))))))))))); - { uint128_t x49 = ((x5 * x23) + ((uint128_t)(Const 4294968273) * ((0x2 * (x7 * x38)) + ((0x2 * (x9 * x39)) + ((0x2 * (x11 * x37)) + ((0x2 * (x13 * x35)) + ((x15 * x33) + ((0x2 * (x17 * x31)) + ((0x2 * (x19 * x29)) + ((0x2 * (x21 * x27)) + (0x2 * (x20 * x25)))))))))))); + { uint128_t x41 = (((x5 * x39) + ((0x2 * (x7 * x37)) + ((0x2 * (x9 * x35)) + ((x11 * x33) + ((0x2 * (x13 * x31)) + ((x15 * x29) + ((0x2 * (x17 * x27)) + ((0x2 * (x19 * x25)) + (x21 * x23))))))))) + ((uint128_t)0x1000003d1 * (0x2 * (x20 * x38)))); + { uint128_t x42 = (((x5 * x37) + ((x7 * x35) + ((x9 * x33) + ((x11 * x31) + ((x13 * x29) + ((x15 * x27) + ((x17 * x25) + (x19 * x23)))))))) + ((uint128_t)0x1000003d1 * ((x21 * x38) + (x20 * x39)))); + { uint128_t x43 = (((x5 * x35) + ((x7 * x33) + ((0x2 * (x9 * x31)) + ((x11 * x29) + ((0x2 * (x13 * x27)) + ((x15 * x25) + (x17 * x23))))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x19 * x38)) + ((x21 * x39) + (0x2 * (x20 * x37)))))); + { uint128_t x44 = (((x5 * x33) + ((0x2 * (x7 * x31)) + ((0x2 * (x9 * x29)) + ((0x2 * (x11 * x27)) + ((0x2 * (x13 * x25)) + (x15 * x23)))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x17 * x38)) + ((0x2 * (x19 * x39)) + ((0x2 * (x21 * x37)) + (0x2 * (x20 * x35))))))); + { uint128_t x45 = (((x5 * x31) + ((x7 * x29) + ((0x2 * (x9 * x27)) + ((x11 * x25) + (x13 * x23))))) + ((uint128_t)0x1000003d1 * ((x15 * x38) + ((x17 * x39) + ((0x2 * (x19 * x37)) + ((x21 * x35) + (x20 * x33))))))); + { uint128_t x46 = (((x5 * x29) + ((0x2 * (x7 * x27)) + ((0x2 * (x9 * x25)) + (x11 * x23)))) + ((uint128_t)0x1000003d1 * ((0x2 * (x13 * x38)) + ((x15 * x39) + ((0x2 * (x17 * x37)) + ((0x2 * (x19 * x35)) + ((x21 * x33) + (0x2 * (x20 * x31))))))))); + { uint128_t x47 = (((x5 * x27) + ((x7 * x25) + (x9 * x23))) + ((uint128_t)0x1000003d1 * ((x11 * x38) + ((x13 * x39) + ((x15 * x37) + ((x17 * x35) + ((x19 * x33) + ((x21 * x31) + (x20 * x29))))))))); + { uint128_t x48 = (((x5 * x25) + (x7 * x23)) + ((uint128_t)0x1000003d1 * ((0x2 * (x9 * x38)) + ((x11 * x39) + ((0x2 * (x13 * x37)) + ((x15 * x35) + ((x17 * x33) + ((0x2 * (x19 * x31)) + ((x21 * x29) + (0x2 * (x20 * x27))))))))))); + { uint128_t x49 = ((x5 * x23) + ((uint128_t)0x1000003d1 * ((0x2 * (x7 * x38)) + ((0x2 * (x9 * x39)) + ((0x2 * (x11 * x37)) + ((0x2 * (x13 * x35)) + ((x15 * x33) + ((0x2 * (x17 * x31)) + ((0x2 * (x19 * x29)) + ((0x2 * (x21 * x27)) + (0x2 * (x20 * x25)))))))))))); { uint128_t x50 = (x49 >> 0x1a); { uint64_t x51 = ((uint64_t)x49 & 0x3ffffff); { uint128_t x52 = (x50 + x48); @@ -58,7 +58,7 @@ static void femul(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[1 { uint64_t x76 = (x74 + x40); { uint64_t x77 = (x76 >> 0x19); { uint64_t x78 = (x76 & 0x1ffffff); - { uint128_t x79 = (x51 + ((uint128_t)(Const 4294968273) * x77)); + { uint128_t x79 = (x51 + ((uint128_t)0x1000003d1 * x77)); { uint64_t x80 = (uint64_t) (x79 >> 0x1a); { uint64_t x81 = ((uint64_t)x79 & 0x3ffffff); { uint64_t x82 = (x80 + x54); diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/femulDisplay.log b/src/Specific/solinas64_2e256m4294968273_10limbs/femulDisplay.log index 49a889825..ced98fd6d 100644 --- a/src/Specific/solinas64_2e256m4294968273_10limbs/femulDisplay.log +++ b/src/Specific/solinas64_2e256m4294968273_10limbs/femulDisplay.log @@ -3,15 +3,15 @@ Interp-η (λ var : Syntax.base_type → Type, λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core, uint64_t x40 = ((x5 * x38) + ((x7 * x39) + ((0x2 * (x9 * x37)) + ((x11 * x35) + ((x13 * x33) + ((x15 * x31) + ((x17 * x29) + ((0x2 * (x19 * x27)) + ((x21 * x25) + (x20 * x23)))))))))); - uint128_t x41 = (((x5 * x39) + ((0x2 * (x7 * x37)) + ((0x2 * (x9 * x35)) + ((x11 * x33) + ((0x2 * (x13 * x31)) + ((x15 * x29) + ((0x2 * (x17 * x27)) + ((0x2 * (x19 * x25)) + (x21 * x23))))))))) + ((uint128_t)(Const 4294968273) * (0x2 * (x20 * x38)))); - uint128_t x42 = (((x5 * x37) + ((x7 * x35) + ((x9 * x33) + ((x11 * x31) + ((x13 * x29) + ((x15 * x27) + ((x17 * x25) + (x19 * x23)))))))) + ((uint128_t)(Const 4294968273) * ((x21 * x38) + (x20 * x39)))); - uint128_t x43 = (((x5 * x35) + ((x7 * x33) + ((0x2 * (x9 * x31)) + ((x11 * x29) + ((0x2 * (x13 * x27)) + ((x15 * x25) + (x17 * x23))))))) + ((uint128_t)(Const 4294968273) * ((0x2 * (x19 * x38)) + ((x21 * x39) + (0x2 * (x20 * x37)))))); - uint128_t x44 = (((x5 * x33) + ((0x2 * (x7 * x31)) + ((0x2 * (x9 * x29)) + ((0x2 * (x11 * x27)) + ((0x2 * (x13 * x25)) + (x15 * x23)))))) + ((uint128_t)(Const 4294968273) * ((0x2 * (x17 * x38)) + ((0x2 * (x19 * x39)) + ((0x2 * (x21 * x37)) + (0x2 * (x20 * x35))))))); - uint128_t x45 = (((x5 * x31) + ((x7 * x29) + ((0x2 * (x9 * x27)) + ((x11 * x25) + (x13 * x23))))) + ((uint128_t)(Const 4294968273) * ((x15 * x38) + ((x17 * x39) + ((0x2 * (x19 * x37)) + ((x21 * x35) + (x20 * x33))))))); - uint128_t x46 = (((x5 * x29) + ((0x2 * (x7 * x27)) + ((0x2 * (x9 * x25)) + (x11 * x23)))) + ((uint128_t)(Const 4294968273) * ((0x2 * (x13 * x38)) + ((x15 * x39) + ((0x2 * (x17 * x37)) + ((0x2 * (x19 * x35)) + ((x21 * x33) + (0x2 * (x20 * x31))))))))); - uint128_t x47 = (((x5 * x27) + ((x7 * x25) + (x9 * x23))) + ((uint128_t)(Const 4294968273) * ((x11 * x38) + ((x13 * x39) + ((x15 * x37) + ((x17 * x35) + ((x19 * x33) + ((x21 * x31) + (x20 * x29))))))))); - uint128_t x48 = (((x5 * x25) + (x7 * x23)) + ((uint128_t)(Const 4294968273) * ((0x2 * (x9 * x38)) + ((x11 * x39) + ((0x2 * (x13 * x37)) + ((x15 * x35) + ((x17 * x33) + ((0x2 * (x19 * x31)) + ((x21 * x29) + (0x2 * (x20 * x27))))))))))); - uint128_t x49 = ((x5 * x23) + ((uint128_t)(Const 4294968273) * ((0x2 * (x7 * x38)) + ((0x2 * (x9 * x39)) + ((0x2 * (x11 * x37)) + ((0x2 * (x13 * x35)) + ((x15 * x33) + ((0x2 * (x17 * x31)) + ((0x2 * (x19 * x29)) + ((0x2 * (x21 * x27)) + (0x2 * (x20 * x25)))))))))))); + uint128_t x41 = (((x5 * x39) + ((0x2 * (x7 * x37)) + ((0x2 * (x9 * x35)) + ((x11 * x33) + ((0x2 * (x13 * x31)) + ((x15 * x29) + ((0x2 * (x17 * x27)) + ((0x2 * (x19 * x25)) + (x21 * x23))))))))) + ((uint128_t)0x1000003d1 * (0x2 * (x20 * x38)))); + uint128_t x42 = (((x5 * x37) + ((x7 * x35) + ((x9 * x33) + ((x11 * x31) + ((x13 * x29) + ((x15 * x27) + ((x17 * x25) + (x19 * x23)))))))) + ((uint128_t)0x1000003d1 * ((x21 * x38) + (x20 * x39)))); + uint128_t x43 = (((x5 * x35) + ((x7 * x33) + ((0x2 * (x9 * x31)) + ((x11 * x29) + ((0x2 * (x13 * x27)) + ((x15 * x25) + (x17 * x23))))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x19 * x38)) + ((x21 * x39) + (0x2 * (x20 * x37)))))); + uint128_t x44 = (((x5 * x33) + ((0x2 * (x7 * x31)) + ((0x2 * (x9 * x29)) + ((0x2 * (x11 * x27)) + ((0x2 * (x13 * x25)) + (x15 * x23)))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x17 * x38)) + ((0x2 * (x19 * x39)) + ((0x2 * (x21 * x37)) + (0x2 * (x20 * x35))))))); + uint128_t x45 = (((x5 * x31) + ((x7 * x29) + ((0x2 * (x9 * x27)) + ((x11 * x25) + (x13 * x23))))) + ((uint128_t)0x1000003d1 * ((x15 * x38) + ((x17 * x39) + ((0x2 * (x19 * x37)) + ((x21 * x35) + (x20 * x33))))))); + uint128_t x46 = (((x5 * x29) + ((0x2 * (x7 * x27)) + ((0x2 * (x9 * x25)) + (x11 * x23)))) + ((uint128_t)0x1000003d1 * ((0x2 * (x13 * x38)) + ((x15 * x39) + ((0x2 * (x17 * x37)) + ((0x2 * (x19 * x35)) + ((x21 * x33) + (0x2 * (x20 * x31))))))))); + uint128_t x47 = (((x5 * x27) + ((x7 * x25) + (x9 * x23))) + ((uint128_t)0x1000003d1 * ((x11 * x38) + ((x13 * x39) + ((x15 * x37) + ((x17 * x35) + ((x19 * x33) + ((x21 * x31) + (x20 * x29))))))))); + uint128_t x48 = (((x5 * x25) + (x7 * x23)) + ((uint128_t)0x1000003d1 * ((0x2 * (x9 * x38)) + ((x11 * x39) + ((0x2 * (x13 * x37)) + ((x15 * x35) + ((x17 * x33) + ((0x2 * (x19 * x31)) + ((x21 * x29) + (0x2 * (x20 * x27))))))))))); + uint128_t x49 = ((x5 * x23) + ((uint128_t)0x1000003d1 * ((0x2 * (x7 * x38)) + ((0x2 * (x9 * x39)) + ((0x2 * (x11 * x37)) + ((0x2 * (x13 * x35)) + ((x15 * x33) + ((0x2 * (x17 * x31)) + ((0x2 * (x19 * x29)) + ((0x2 * (x21 * x27)) + (0x2 * (x20 * x25)))))))))))); uint128_t x50 = (x49 >> 0x1a); uint64_t x51 = ((uint64_t)x49 & 0x3ffffff); uint128_t x52 = (x50 + x48); @@ -41,7 +41,7 @@ Interp-η uint64_t x76 = (x74 + x40); uint64_t x77 = (x76 >> 0x19); uint64_t x78 = (x76 & 0x1ffffff); - uint128_t x79 = (x51 + ((uint128_t)(Const 4294968273) * x77)); + uint128_t x79 = (x51 + ((uint128_t)0x1000003d1 * x77)); uint64_t x80 = (uint64_t) (x79 >> 0x1a); uint64_t x81 = ((uint64_t)x79 & 0x3ffffff); uint64_t x82 = (x80 + x54); diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/fesquare.c b/src/Specific/solinas64_2e256m4294968273_10limbs/fesquare.c index bfd8feff4..52a26a638 100644 --- a/src/Specific/solinas64_2e256m4294968273_10limbs/fesquare.c +++ b/src/Specific/solinas64_2e256m4294968273_10limbs/fesquare.c @@ -10,15 +10,15 @@ static void fesquare(uint64_t out[10], const uint64_t in1[10]) { { const uint64_t x4 = in1[1]; { const uint64_t x2 = in1[0]; { uint64_t x19 = ((x2 * x17) + ((x4 * x18) + ((0x2 * (x6 * x16)) + ((x8 * x14) + ((x10 * x12) + ((x12 * x10) + ((x14 * x8) + ((0x2 * (x16 * x6)) + ((x18 * x4) + (x17 * x2)))))))))); - { uint128_t x20 = (((x2 * x18) + ((0x2 * (x4 * x16)) + ((0x2 * (x6 * x14)) + ((x8 * x12) + ((0x2 * (x10 * x10)) + ((x12 * x8) + ((0x2 * (x14 * x6)) + ((0x2 * (x16 * x4)) + (x18 * x2))))))))) + ((uint128_t)(Const 4294968273) * (0x2 * (x17 * x17)))); - { uint128_t x21 = (((x2 * x16) + ((x4 * x14) + ((x6 * x12) + ((x8 * x10) + ((x10 * x8) + ((x12 * x6) + ((x14 * x4) + (x16 * x2)))))))) + ((uint128_t)(Const 4294968273) * ((x18 * x17) + (x17 * x18)))); - { uint128_t x22 = (((x2 * x14) + ((x4 * x12) + ((0x2 * (x6 * x10)) + ((x8 * x8) + ((0x2 * (x10 * x6)) + ((x12 * x4) + (x14 * x2))))))) + ((uint128_t)(Const 4294968273) * ((0x2 * (x16 * x17)) + ((x18 * x18) + (0x2 * (x17 * x16)))))); - { uint128_t x23 = (((x2 * x12) + ((0x2 * (x4 * x10)) + ((0x2 * (x6 * x8)) + ((0x2 * (x8 * x6)) + ((0x2 * (x10 * x4)) + (x12 * x2)))))) + ((uint128_t)(Const 4294968273) * ((0x2 * (x14 * x17)) + ((0x2 * (x16 * x18)) + ((0x2 * (x18 * x16)) + (0x2 * (x17 * x14))))))); - { uint128_t x24 = (((x2 * x10) + ((x4 * x8) + ((0x2 * (x6 * x6)) + ((x8 * x4) + (x10 * x2))))) + ((uint128_t)(Const 4294968273) * ((x12 * x17) + ((x14 * x18) + ((0x2 * (x16 * x16)) + ((x18 * x14) + (x17 * x12))))))); - { uint128_t x25 = (((x2 * x8) + ((0x2 * (x4 * x6)) + ((0x2 * (x6 * x4)) + (x8 * x2)))) + ((uint128_t)(Const 4294968273) * ((0x2 * (x10 * x17)) + ((x12 * x18) + ((0x2 * (x14 * x16)) + ((0x2 * (x16 * x14)) + ((x18 * x12) + (0x2 * (x17 * x10))))))))); - { uint128_t x26 = (((x2 * x6) + ((x4 * x4) + (x6 * x2))) + ((uint128_t)(Const 4294968273) * ((x8 * x17) + ((x10 * x18) + ((x12 * x16) + ((x14 * x14) + ((x16 * x12) + ((x18 * x10) + (x17 * x8))))))))); - { uint128_t x27 = (((x2 * x4) + (x4 * x2)) + ((uint128_t)(Const 4294968273) * ((0x2 * (x6 * x17)) + ((x8 * x18) + ((0x2 * (x10 * x16)) + ((x12 * x14) + ((x14 * x12) + ((0x2 * (x16 * x10)) + ((x18 * x8) + (0x2 * (x17 * x6))))))))))); - { uint128_t x28 = ((x2 * x2) + ((uint128_t)(Const 4294968273) * ((0x2 * (x4 * x17)) + ((0x2 * (x6 * x18)) + ((0x2 * (x8 * x16)) + ((0x2 * (x10 * x14)) + ((x12 * x12) + ((0x2 * (x14 * x10)) + ((0x2 * (x16 * x8)) + ((0x2 * (x18 * x6)) + (0x2 * (x17 * x4)))))))))))); + { uint128_t x20 = (((x2 * x18) + ((0x2 * (x4 * x16)) + ((0x2 * (x6 * x14)) + ((x8 * x12) + ((0x2 * (x10 * x10)) + ((x12 * x8) + ((0x2 * (x14 * x6)) + ((0x2 * (x16 * x4)) + (x18 * x2))))))))) + ((uint128_t)0x1000003d1 * (0x2 * (x17 * x17)))); + { uint128_t x21 = (((x2 * x16) + ((x4 * x14) + ((x6 * x12) + ((x8 * x10) + ((x10 * x8) + ((x12 * x6) + ((x14 * x4) + (x16 * x2)))))))) + ((uint128_t)0x1000003d1 * ((x18 * x17) + (x17 * x18)))); + { uint128_t x22 = (((x2 * x14) + ((x4 * x12) + ((0x2 * (x6 * x10)) + ((x8 * x8) + ((0x2 * (x10 * x6)) + ((x12 * x4) + (x14 * x2))))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x16 * x17)) + ((x18 * x18) + (0x2 * (x17 * x16)))))); + { uint128_t x23 = (((x2 * x12) + ((0x2 * (x4 * x10)) + ((0x2 * (x6 * x8)) + ((0x2 * (x8 * x6)) + ((0x2 * (x10 * x4)) + (x12 * x2)))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x14 * x17)) + ((0x2 * (x16 * x18)) + ((0x2 * (x18 * x16)) + (0x2 * (x17 * x14))))))); + { uint128_t x24 = (((x2 * x10) + ((x4 * x8) + ((0x2 * (x6 * x6)) + ((x8 * x4) + (x10 * x2))))) + ((uint128_t)0x1000003d1 * ((x12 * x17) + ((x14 * x18) + ((0x2 * (x16 * x16)) + ((x18 * x14) + (x17 * x12))))))); + { uint128_t x25 = (((x2 * x8) + ((0x2 * (x4 * x6)) + ((0x2 * (x6 * x4)) + (x8 * x2)))) + ((uint128_t)0x1000003d1 * ((0x2 * (x10 * x17)) + ((x12 * x18) + ((0x2 * (x14 * x16)) + ((0x2 * (x16 * x14)) + ((x18 * x12) + (0x2 * (x17 * x10))))))))); + { uint128_t x26 = (((x2 * x6) + ((x4 * x4) + (x6 * x2))) + ((uint128_t)0x1000003d1 * ((x8 * x17) + ((x10 * x18) + ((x12 * x16) + ((x14 * x14) + ((x16 * x12) + ((x18 * x10) + (x17 * x8))))))))); + { uint128_t x27 = (((x2 * x4) + (x4 * x2)) + ((uint128_t)0x1000003d1 * ((0x2 * (x6 * x17)) + ((x8 * x18) + ((0x2 * (x10 * x16)) + ((x12 * x14) + ((x14 * x12) + ((0x2 * (x16 * x10)) + ((x18 * x8) + (0x2 * (x17 * x6))))))))))); + { uint128_t x28 = ((x2 * x2) + ((uint128_t)0x1000003d1 * ((0x2 * (x4 * x17)) + ((0x2 * (x6 * x18)) + ((0x2 * (x8 * x16)) + ((0x2 * (x10 * x14)) + ((x12 * x12) + ((0x2 * (x14 * x10)) + ((0x2 * (x16 * x8)) + ((0x2 * (x18 * x6)) + (0x2 * (x17 * x4)))))))))))); { uint128_t x29 = (x28 >> 0x1a); { uint64_t x30 = ((uint64_t)x28 & 0x3ffffff); { uint128_t x31 = (x29 + x27); @@ -48,7 +48,7 @@ static void fesquare(uint64_t out[10], const uint64_t in1[10]) { { uint64_t x55 = (x53 + x19); { uint64_t x56 = (x55 >> 0x19); { uint64_t x57 = (x55 & 0x1ffffff); - { uint128_t x58 = (x30 + ((uint128_t)(Const 4294968273) * x56)); + { uint128_t x58 = (x30 + ((uint128_t)0x1000003d1 * x56)); { uint64_t x59 = (uint64_t) (x58 >> 0x1a); { uint64_t x60 = ((uint64_t)x58 & 0x3ffffff); { uint64_t x61 = (x59 + x33); diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/fesquareDisplay.log b/src/Specific/solinas64_2e256m4294968273_10limbs/fesquareDisplay.log index e5b48b884..048495fe4 100644 --- a/src/Specific/solinas64_2e256m4294968273_10limbs/fesquareDisplay.log +++ b/src/Specific/solinas64_2e256m4294968273_10limbs/fesquareDisplay.log @@ -3,15 +3,15 @@ Interp-η (λ var : Syntax.base_type → Type, λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core, uint64_t x19 = ((x2 * x17) + ((x4 * x18) + ((0x2 * (x6 * x16)) + ((x8 * x14) + ((x10 * x12) + ((x12 * x10) + ((x14 * x8) + ((0x2 * (x16 * x6)) + ((x18 * x4) + (x17 * x2)))))))))); - uint128_t x20 = (((x2 * x18) + ((0x2 * (x4 * x16)) + ((0x2 * (x6 * x14)) + ((x8 * x12) + ((0x2 * (x10 * x10)) + ((x12 * x8) + ((0x2 * (x14 * x6)) + ((0x2 * (x16 * x4)) + (x18 * x2))))))))) + ((uint128_t)(Const 4294968273) * (0x2 * (x17 * x17)))); - uint128_t x21 = (((x2 * x16) + ((x4 * x14) + ((x6 * x12) + ((x8 * x10) + ((x10 * x8) + ((x12 * x6) + ((x14 * x4) + (x16 * x2)))))))) + ((uint128_t)(Const 4294968273) * ((x18 * x17) + (x17 * x18)))); - uint128_t x22 = (((x2 * x14) + ((x4 * x12) + ((0x2 * (x6 * x10)) + ((x8 * x8) + ((0x2 * (x10 * x6)) + ((x12 * x4) + (x14 * x2))))))) + ((uint128_t)(Const 4294968273) * ((0x2 * (x16 * x17)) + ((x18 * x18) + (0x2 * (x17 * x16)))))); - uint128_t x23 = (((x2 * x12) + ((0x2 * (x4 * x10)) + ((0x2 * (x6 * x8)) + ((0x2 * (x8 * x6)) + ((0x2 * (x10 * x4)) + (x12 * x2)))))) + ((uint128_t)(Const 4294968273) * ((0x2 * (x14 * x17)) + ((0x2 * (x16 * x18)) + ((0x2 * (x18 * x16)) + (0x2 * (x17 * x14))))))); - uint128_t x24 = (((x2 * x10) + ((x4 * x8) + ((0x2 * (x6 * x6)) + ((x8 * x4) + (x10 * x2))))) + ((uint128_t)(Const 4294968273) * ((x12 * x17) + ((x14 * x18) + ((0x2 * (x16 * x16)) + ((x18 * x14) + (x17 * x12))))))); - uint128_t x25 = (((x2 * x8) + ((0x2 * (x4 * x6)) + ((0x2 * (x6 * x4)) + (x8 * x2)))) + ((uint128_t)(Const 4294968273) * ((0x2 * (x10 * x17)) + ((x12 * x18) + ((0x2 * (x14 * x16)) + ((0x2 * (x16 * x14)) + ((x18 * x12) + (0x2 * (x17 * x10))))))))); - uint128_t x26 = (((x2 * x6) + ((x4 * x4) + (x6 * x2))) + ((uint128_t)(Const 4294968273) * ((x8 * x17) + ((x10 * x18) + ((x12 * x16) + ((x14 * x14) + ((x16 * x12) + ((x18 * x10) + (x17 * x8))))))))); - uint128_t x27 = (((x2 * x4) + (x4 * x2)) + ((uint128_t)(Const 4294968273) * ((0x2 * (x6 * x17)) + ((x8 * x18) + ((0x2 * (x10 * x16)) + ((x12 * x14) + ((x14 * x12) + ((0x2 * (x16 * x10)) + ((x18 * x8) + (0x2 * (x17 * x6))))))))))); - uint128_t x28 = ((x2 * x2) + ((uint128_t)(Const 4294968273) * ((0x2 * (x4 * x17)) + ((0x2 * (x6 * x18)) + ((0x2 * (x8 * x16)) + ((0x2 * (x10 * x14)) + ((x12 * x12) + ((0x2 * (x14 * x10)) + ((0x2 * (x16 * x8)) + ((0x2 * (x18 * x6)) + (0x2 * (x17 * x4)))))))))))); + uint128_t x20 = (((x2 * x18) + ((0x2 * (x4 * x16)) + ((0x2 * (x6 * x14)) + ((x8 * x12) + ((0x2 * (x10 * x10)) + ((x12 * x8) + ((0x2 * (x14 * x6)) + ((0x2 * (x16 * x4)) + (x18 * x2))))))))) + ((uint128_t)0x1000003d1 * (0x2 * (x17 * x17)))); + uint128_t x21 = (((x2 * x16) + ((x4 * x14) + ((x6 * x12) + ((x8 * x10) + ((x10 * x8) + ((x12 * x6) + ((x14 * x4) + (x16 * x2)))))))) + ((uint128_t)0x1000003d1 * ((x18 * x17) + (x17 * x18)))); + uint128_t x22 = (((x2 * x14) + ((x4 * x12) + ((0x2 * (x6 * x10)) + ((x8 * x8) + ((0x2 * (x10 * x6)) + ((x12 * x4) + (x14 * x2))))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x16 * x17)) + ((x18 * x18) + (0x2 * (x17 * x16)))))); + uint128_t x23 = (((x2 * x12) + ((0x2 * (x4 * x10)) + ((0x2 * (x6 * x8)) + ((0x2 * (x8 * x6)) + ((0x2 * (x10 * x4)) + (x12 * x2)))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x14 * x17)) + ((0x2 * (x16 * x18)) + ((0x2 * (x18 * x16)) + (0x2 * (x17 * x14))))))); + uint128_t x24 = (((x2 * x10) + ((x4 * x8) + ((0x2 * (x6 * x6)) + ((x8 * x4) + (x10 * x2))))) + ((uint128_t)0x1000003d1 * ((x12 * x17) + ((x14 * x18) + ((0x2 * (x16 * x16)) + ((x18 * x14) + (x17 * x12))))))); + uint128_t x25 = (((x2 * x8) + ((0x2 * (x4 * x6)) + ((0x2 * (x6 * x4)) + (x8 * x2)))) + ((uint128_t)0x1000003d1 * ((0x2 * (x10 * x17)) + ((x12 * x18) + ((0x2 * (x14 * x16)) + ((0x2 * (x16 * x14)) + ((x18 * x12) + (0x2 * (x17 * x10))))))))); + uint128_t x26 = (((x2 * x6) + ((x4 * x4) + (x6 * x2))) + ((uint128_t)0x1000003d1 * ((x8 * x17) + ((x10 * x18) + ((x12 * x16) + ((x14 * x14) + ((x16 * x12) + ((x18 * x10) + (x17 * x8))))))))); + uint128_t x27 = (((x2 * x4) + (x4 * x2)) + ((uint128_t)0x1000003d1 * ((0x2 * (x6 * x17)) + ((x8 * x18) + ((0x2 * (x10 * x16)) + ((x12 * x14) + ((x14 * x12) + ((0x2 * (x16 * x10)) + ((x18 * x8) + (0x2 * (x17 * x6))))))))))); + uint128_t x28 = ((x2 * x2) + ((uint128_t)0x1000003d1 * ((0x2 * (x4 * x17)) + ((0x2 * (x6 * x18)) + ((0x2 * (x8 * x16)) + ((0x2 * (x10 * x14)) + ((x12 * x12) + ((0x2 * (x14 * x10)) + ((0x2 * (x16 * x8)) + ((0x2 * (x18 * x6)) + (0x2 * (x17 * x4)))))))))))); uint128_t x29 = (x28 >> 0x1a); uint64_t x30 = ((uint64_t)x28 & 0x3ffffff); uint128_t x31 = (x29 + x27); @@ -41,7 +41,7 @@ Interp-η uint64_t x55 = (x53 + x19); uint64_t x56 = (x55 >> 0x19); uint64_t x57 = (x55 & 0x1ffffff); - uint128_t x58 = (x30 + ((uint128_t)(Const 4294968273) * x56)); + uint128_t x58 = (x30 + ((uint128_t)0x1000003d1 * x56)); uint64_t x59 = (uint64_t) (x58 >> 0x1a); uint64_t x60 = ((uint64_t)x58 & 0x3ffffff); uint64_t x61 = (x59 + x33); diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/fesub.c b/src/Specific/solinas64_2e256m4294968273_10limbs/fesub.c index 6d65af5ed..47fd8e81c 100644 --- a/src/Specific/solinas64_2e256m4294968273_10limbs/fesub.c +++ b/src/Specific/solinas64_2e256m4294968273_10limbs/fesub.c @@ -19,8 +19,8 @@ static void fesub(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[1 { const uint64_t x27 = in2[2]; { const uint64_t x25 = in2[1]; { const uint64_t x23 = in2[0]; - out[0] = ((Const 134215774 + x5) - x23); - out[1] = ((Const 134217598 + x7) - x25); + out[0] = ((0x7fff85e + x5) - x23); + out[1] = ((0x7ffff7e + x7) - x25); out[2] = ((0x3fffffe + x9) - x27); out[3] = ((0x7fffffe + x11) - x29); out[4] = ((0x3fffffe + x13) - x31); diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/fesubDisplay.log b/src/Specific/solinas64_2e256m4294968273_10limbs/fesubDisplay.log index 0d8f8ff9f..e3b338c3c 100644 --- a/src/Specific/solinas64_2e256m4294968273_10limbs/fesubDisplay.log +++ b/src/Specific/solinas64_2e256m4294968273_10limbs/fesubDisplay.log @@ -2,6 +2,6 @@ Interp-η (λ var : Syntax.base_type → Type, λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core, - (((0x3fffffe + x20) - x38), ((0x7fffffe + x21) - x39), ((0x3fffffe + x19) - x37), ((0x7fffffe + x17) - x35), ((0x7fffffe + x15) - x33), ((0x3fffffe + x13) - x31), ((0x7fffffe + x11) - x29), ((0x3fffffe + x9) - x27), ((Const 134217598 + x7) - x25), ((Const 134215774 + x5) - x23))) + (((0x3fffffe + x20) - x38), ((0x7fffffe + x21) - x39), ((0x3fffffe + x19) - x37), ((0x7fffffe + x17) - x35), ((0x7fffffe + x15) - x33), ((0x3fffffe + x13) - x31), ((0x7fffffe + x11) - x29), ((0x3fffffe + x9) - x27), ((0x7ffff7e + x7) - x25), ((0x7fff85e + x5) - x23))) (x, x0)%core : 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) diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/freeze.c b/src/Specific/solinas64_2e256m4294968273_10limbs/freeze.c index e54c5cace..d5234c2a8 100644 --- a/src/Specific/solinas64_2e256m4294968273_10limbs/freeze.c +++ b/src/Specific/solinas64_2e256m4294968273_10limbs/freeze.c @@ -9,8 +9,8 @@ static void freeze(uint64_t out[10], const uint64_t in1[10]) { { const uint64_t x6 = in1[2]; { const uint64_t x4 = in1[1]; { const uint64_t x2 = in1[0]; - { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, Const 67107887); - { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x4, Const 67108799); + { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffc2f); + { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x4, 0x3ffffbf); { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x6, 0x1ffffff); { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x8, 0x3ffffff); { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x10, 0x1ffffff); @@ -20,9 +20,9 @@ static void freeze(uint64_t out[10], const uint64_t in1[10]) { { uint64_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x18, 0x3ffffff); { uint64_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x17, 0x1ffffff); { uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL); - { uint64_t x50 = (x49 & Const 67107887); + { uint64_t x50 = (x49 & 0x3fffc2f); { uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50); - { uint64_t x54 = (x49 & Const 67108799); + { uint64_t x54 = (x49 & 0x3ffffbf); { uint64_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x53, Return x23, Return x54); { uint64_t x58 = (x49 & 0x1ffffff); { uint64_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x57, Return x26, Return x58); diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/freezeDisplay.log b/src/Specific/solinas64_2e256m4294968273_10limbs/freezeDisplay.log index 1d0b3c646..db98ea96f 100644 --- a/src/Specific/solinas64_2e256m4294968273_10limbs/freezeDisplay.log +++ b/src/Specific/solinas64_2e256m4294968273_10limbs/freezeDisplay.log @@ -2,8 +2,8 @@ Interp-η (λ var : Syntax.base_type → Type, λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core, - uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, Const 67107887); - uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x4, Const 67108799); + uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffc2f); + uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x4, 0x3ffffbf); uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x6, 0x1ffffff); uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x8, 0x3ffffff); uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x10, 0x1ffffff); @@ -13,9 +13,9 @@ Interp-η uint64_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x18, 0x3ffffff); uint64_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x17, 0x1ffffff); uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL); - uint64_t x50 = (x49 & Const 67107887); + uint64_t x50 = (x49 & 0x3fffc2f); uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50); - uint64_t x54 = (x49 & Const 67108799); + uint64_t x54 = (x49 & 0x3ffffbf); uint64_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x53, Return x23, Return x54); uint64_t x58 = (x49 & 0x1ffffff); uint64_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x57, Return x26, Return x58); |