aboutsummaryrefslogtreecommitdiff
path: root/src/Specific
diff options
context:
space:
mode:
authorGravatar Jason Gross <jgross@mit.edu>2017-06-18 21:58:54 -0400
committerGravatar Jason Gross <jgross@mit.edu>2017-06-18 21:58:54 -0400
commit7b26e20761cdd56f41c9fbd525a7ca7dc72247a9 (patch)
tree79b41e8ca64d30fd611159b7d3639292634f04c3 /src/Specific
parenta9fa48664464295560be7e4727a7efc4ed06c4eb (diff)
make display
This closes #205
Diffstat (limited to 'src/Specific')
-rw-r--r--src/Specific/IntegrationTestMontgomeryP256Display.log242
-rw-r--r--src/Specific/IntegrationTestMontgomeryP256_128Display.log70
2 files changed, 117 insertions, 195 deletions
diff --git a/src/Specific/IntegrationTestMontgomeryP256Display.log b/src/Specific/IntegrationTestMontgomeryP256Display.log
index 9a4dd7280..7b514df9e 100644
--- a/src/Specific/IntegrationTestMontgomeryP256Display.log
+++ b/src/Specific/IntegrationTestMontgomeryP256Display.log
@@ -2,163 +2,103 @@
Interp-η
(λ var : Syntax.base_type → Type,
λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (uint128_t) x5 * x11;
- uint64_t x17 = (uint64_t) x16 & 0xffffffffffffffffL;
- uint64_t x18 = (uint64_t) (x16 >> 0x40);
- uint128_t x19 = (uint128_t) x5 * x13;
- uint64_t x20 = (uint64_t) x19 & 0xffffffffffffffffL;
- uint64_t x21 = (uint64_t) (x19 >> 0x40);
- uint128_t x22 = (uint128_t) x5 * x15;
- uint64_t x23 = (uint64_t) x22 & 0xffffffffffffffffL;
- uint64_t x24 = (uint64_t) (x22 >> 0x40);
- uint128_t x25 = (uint128_t) x5 * x14;
- uint64_t x26 = (uint64_t) x25 & 0xffffffffffffffffL;
- uint64_t x27 = (uint64_t) (x25 >> 0x40);
+ uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
+ uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
+ uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
+ uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x40 = x17 & 0xffffffffffffffffL;
- uint128_t x41 = (uint128_t) x40 * 0xffffffffffffffffL;
- uint64_t x42 = (uint64_t) x41 & 0xffffffffffffffffL;
- uint64_t x43 = (uint64_t) (x41 >> 0x40);
- uint128_t x44 = (uint128_t) x40 * 0xffffffff;
- uint64_t x45 = (uint64_t) x44 & 0xffffffffffffffffL;
- uint64_t x46 = (uint64_t) (x44 >> 0x40);
- uint128_t x47 = (uint128_t) x40 * 0xffffffff00000001L;
- uint64_t x48 = (uint64_t) x47 & 0xffffffffffffffffL;
- uint64_t x49 = (uint64_t) (x47 >> 0x40);
- uint64_t x51, uint8_t x52 = addcarryx_u64(0x0, x43, x45);
- uint64_t x54, uint8_t x55 = addcarryx_u64(x52, x46, 0x0);
- uint64_t x57, uint8_t x58 = addcarryx_u64(x55, 0x0, x48);
- uint64_t x60, uint8_t _ = addcarryx_u64(0x0, x58, x49);
- uint64_t _, uint8_t x64 = addcarryx_u64(0x0, x17, x42);
- uint64_t x66, uint8_t x67 = addcarryx_u64(x64, x29, x51);
- uint64_t x69, uint8_t x70 = addcarryx_u64(x67, x32, x54);
- uint64_t x72, uint8_t x73 = addcarryx_u64(x70, x35, x57);
- uint64_t x75, uint8_t x76 = addcarryx_u64(x73, x38, x60);
- uint128_t x77 = (uint128_t) x7 * x11;
- uint64_t x78 = (uint64_t) x77 & 0xffffffffffffffffL;
- uint64_t x79 = (uint64_t) (x77 >> 0x40);
- uint128_t x80 = (uint128_t) x7 * x13;
- uint64_t x81 = (uint64_t) x80 & 0xffffffffffffffffL;
- uint64_t x82 = (uint64_t) (x80 >> 0x40);
- uint128_t x83 = (uint128_t) x7 * x15;
- uint64_t x84 = (uint64_t) x83 & 0xffffffffffffffffL;
- uint64_t x85 = (uint64_t) (x83 >> 0x40);
- uint128_t x86 = (uint128_t) x7 * x14;
- uint64_t x87 = (uint64_t) x86 & 0xffffffffffffffffL;
- uint64_t x88 = (uint64_t) (x86 >> 0x40);
- uint64_t x90, uint8_t x91 = addcarryx_u64(0x0, x79, x81);
- uint64_t x93, uint8_t x94 = addcarryx_u64(x91, x82, x84);
- uint64_t x96, uint8_t x97 = addcarryx_u64(x94, x85, x87);
- uint64_t x99, uint8_t _ = addcarryx_u64(0x0, x97, x88);
- uint64_t x102, uint8_t x103 = addcarryx_u64(0x0, x66, x78);
- uint64_t x105, uint8_t x106 = addcarryx_u64(x103, x69, x90);
- uint64_t x108, uint8_t x109 = addcarryx_u64(x106, x72, x93);
- uint64_t x111, uint8_t x112 = addcarryx_u64(x109, x75, x96);
- uint64_t x114, uint8_t x115 = addcarryx_u64(x112, x76, x99);
- uint64_t x116 = x102 & 0xffffffffffffffffL;
- uint128_t x117 = (uint128_t) x116 * 0xffffffffffffffffL;
- uint64_t x118 = (uint64_t) x117 & 0xffffffffffffffffL;
- uint64_t x119 = (uint64_t) (x117 >> 0x40);
- uint128_t x120 = (uint128_t) x116 * 0xffffffff;
- uint64_t x121 = (uint64_t) x120 & 0xffffffffffffffffL;
- uint64_t x122 = (uint64_t) (x120 >> 0x40);
- uint128_t x123 = (uint128_t) x116 * 0xffffffff00000001L;
- uint64_t x124 = (uint64_t) x123 & 0xffffffffffffffffL;
- uint64_t x125 = (uint64_t) (x123 >> 0x40);
- uint64_t x127, uint8_t x128 = addcarryx_u64(0x0, x119, x121);
- uint64_t x130, uint8_t x131 = addcarryx_u64(x128, x122, 0x0);
- uint64_t x133, uint8_t x134 = addcarryx_u64(x131, 0x0, x124);
- uint64_t x136, uint8_t _ = addcarryx_u64(0x0, x134, x125);
- uint64_t _, uint8_t x140 = addcarryx_u64(0x0, x102, x118);
- uint64_t x142, uint8_t x143 = addcarryx_u64(x140, x105, x127);
- uint64_t x145, uint8_t x146 = addcarryx_u64(x143, x108, x130);
- uint64_t x148, uint8_t x149 = addcarryx_u64(x146, x111, x133);
- uint64_t x151, uint8_t x152 = addcarryx_u64(x149, x114, x136);
- uint8_t x153 = x152 + x115;
- uint128_t x154 = (uint128_t) x9 * x11;
- uint64_t x155 = (uint64_t) x154 & 0xffffffffffffffffL;
- uint64_t x156 = (uint64_t) (x154 >> 0x40);
- uint128_t x157 = (uint128_t) x9 * x13;
- uint64_t x158 = (uint64_t) x157 & 0xffffffffffffffffL;
- uint64_t x159 = (uint64_t) (x157 >> 0x40);
- uint128_t x160 = (uint128_t) x9 * x15;
- uint64_t x161 = (uint64_t) x160 & 0xffffffffffffffffL;
- uint64_t x162 = (uint64_t) (x160 >> 0x40);
- uint128_t x163 = (uint128_t) x9 * x14;
- uint64_t x164 = (uint64_t) x163 & 0xffffffffffffffffL;
- uint64_t x165 = (uint64_t) (x163 >> 0x40);
- uint64_t x167, uint8_t x168 = addcarryx_u64(0x0, x156, x158);
- uint64_t x170, uint8_t x171 = addcarryx_u64(x168, x159, x161);
- uint64_t x173, uint8_t x174 = addcarryx_u64(x171, x162, x164);
- uint64_t x176, uint8_t _ = addcarryx_u64(0x0, x174, x165);
- uint64_t x179, uint8_t x180 = addcarryx_u64(0x0, x142, x155);
- uint64_t x182, uint8_t x183 = addcarryx_u64(x180, x145, x167);
- uint64_t x185, uint8_t x186 = addcarryx_u64(x183, x148, x170);
- uint64_t x188, uint8_t x189 = addcarryx_u64(x186, x151, x173);
- uint64_t x191, uint8_t x192 = addcarryx_u64(x189, x153, x176);
- uint64_t x193 = x179 & 0xffffffffffffffffL;
- uint128_t x194 = (uint128_t) x193 * 0xffffffffffffffffL;
- uint64_t x195 = (uint64_t) x194 & 0xffffffffffffffffL;
- uint64_t x196 = (uint64_t) (x194 >> 0x40);
- uint128_t x197 = (uint128_t) x193 * 0xffffffff;
- uint64_t x198 = (uint64_t) x197 & 0xffffffffffffffffL;
- uint64_t x199 = (uint64_t) (x197 >> 0x40);
- uint128_t x200 = (uint128_t) x193 * 0xffffffff00000001L;
- uint64_t x201 = (uint64_t) x200 & 0xffffffffffffffffL;
- uint64_t x202 = (uint64_t) (x200 >> 0x40);
- uint64_t x204, uint8_t x205 = addcarryx_u64(0x0, x196, x198);
- uint64_t x207, uint8_t x208 = addcarryx_u64(x205, x199, 0x0);
- uint64_t x210, uint8_t x211 = addcarryx_u64(x208, 0x0, x201);
- uint64_t x213, uint8_t _ = addcarryx_u64(0x0, x211, x202);
- uint64_t _, uint8_t x217 = addcarryx_u64(0x0, x179, x195);
- uint64_t x219, uint8_t x220 = addcarryx_u64(x217, x182, x204);
- uint64_t x222, uint8_t x223 = addcarryx_u64(x220, x185, x207);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x188, x210);
- uint64_t x228, uint8_t x229 = addcarryx_u64(x226, x191, x213);
- uint8_t x230 = x229 + x192;
- uint128_t x231 = (uint128_t) x8 * x11;
- uint64_t x232 = (uint64_t) x231 & 0xffffffffffffffffL;
- uint64_t x233 = (uint64_t) (x231 >> 0x40);
- uint128_t x234 = (uint128_t) x8 * x13;
- uint64_t x235 = (uint64_t) x234 & 0xffffffffffffffffL;
- uint64_t x236 = (uint64_t) (x234 >> 0x40);
- uint128_t x237 = (uint128_t) x8 * x15;
- uint64_t x238 = (uint64_t) x237 & 0xffffffffffffffffL;
- uint64_t x239 = (uint64_t) (x237 >> 0x40);
- uint128_t x240 = (uint128_t) x8 * x14;
- uint64_t x241 = (uint64_t) x240 & 0xffffffffffffffffL;
- uint64_t x242 = (uint64_t) (x240 >> 0x40);
- uint64_t x244, uint8_t x245 = addcarryx_u64(0x0, x233, x235);
+ uint64_t x41, uint64_t x42 = mulx_u64(x17, 0xffffffffffffffffL);
+ uint64_t x44, uint64_t x45 = mulx_u64(x17, 0xffffffff);
+ uint64_t x47, uint64_t x48 = mulx_u64(x17, 0xffffffff00000001L);
+ uint64_t x50, uint8_t x51 = addcarryx_u64(0x0, x42, x44);
+ uint64_t x53, uint8_t x54 = addcarryx_u64(x51, x45, 0x0);
+ uint64_t x56, uint8_t x57 = addcarryx_u64(x54, 0x0, x47);
+ uint64_t x59, uint8_t _ = addcarryx_u64(0x0, x57, x48);
+ uint64_t _, uint8_t x63 = addcarryx_u64(0x0, x17, x41);
+ uint64_t x65, uint8_t x66 = addcarryx_u64(x63, x29, x50);
+ uint64_t x68, uint8_t x69 = addcarryx_u64(x66, x32, x53);
+ uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x35, x56);
+ uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x38, x59);
+ uint64_t x77, uint64_t x78 = mulx_u64(x7, x11);
+ uint64_t x80, uint64_t x81 = mulx_u64(x7, x13);
+ uint64_t x83, uint64_t x84 = mulx_u64(x7, x15);
+ uint64_t x86, uint64_t x87 = mulx_u64(x7, x14);
+ uint64_t x89, uint8_t x90 = addcarryx_u64(0x0, x78, x80);
+ uint64_t x92, uint8_t x93 = addcarryx_u64(x90, x81, x83);
+ uint64_t x95, uint8_t x96 = addcarryx_u64(x93, x84, x86);
+ uint64_t x98, uint8_t _ = addcarryx_u64(0x0, x96, x87);
+ uint64_t x101, uint8_t x102 = addcarryx_u64(0x0, x65, x77);
+ uint64_t x104, uint8_t x105 = addcarryx_u64(x102, x68, x89);
+ uint64_t x107, uint8_t x108 = addcarryx_u64(x105, x71, x92);
+ uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
+ uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x75, x98);
+ uint64_t x116, uint64_t x117 = mulx_u64(x101, 0xffffffffffffffffL);
+ uint64_t x119, uint64_t x120 = mulx_u64(x101, 0xffffffff);
+ uint64_t x122, uint64_t x123 = mulx_u64(x101, 0xffffffff00000001L);
+ uint64_t x125, uint8_t x126 = addcarryx_u64(0x0, x117, x119);
+ uint64_t x128, uint8_t x129 = addcarryx_u64(x126, x120, 0x0);
+ uint64_t x131, uint8_t x132 = addcarryx_u64(x129, 0x0, x122);
+ uint64_t x134, uint8_t _ = addcarryx_u64(0x0, x132, x123);
+ uint64_t _, uint8_t x138 = addcarryx_u64(0x0, x101, x116);
+ uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x104, x125);
+ uint64_t x143, uint8_t x144 = addcarryx_u64(x141, x107, x128);
+ uint64_t x146, uint8_t x147 = addcarryx_u64(x144, x110, x131);
+ uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x113, x134);
+ uint8_t x151 = x150 + x114;
+ uint64_t x153, uint64_t x154 = mulx_u64(x9, x11);
+ uint64_t x156, uint64_t x157 = mulx_u64(x9, x13);
+ uint64_t x159, uint64_t x160 = mulx_u64(x9, x15);
+ uint64_t x162, uint64_t x163 = mulx_u64(x9, x14);
+ uint64_t x165, uint8_t x166 = addcarryx_u64(0x0, x154, x156);
+ uint64_t x168, uint8_t x169 = addcarryx_u64(x166, x157, x159);
+ uint64_t x171, uint8_t x172 = addcarryx_u64(x169, x160, x162);
+ uint64_t x174, uint8_t _ = addcarryx_u64(0x0, x172, x163);
+ uint64_t x177, uint8_t x178 = addcarryx_u64(0x0, x140, x153);
+ uint64_t x180, uint8_t x181 = addcarryx_u64(x178, x143, x165);
+ uint64_t x183, uint8_t x184 = addcarryx_u64(x181, x146, x168);
+ uint64_t x186, uint8_t x187 = addcarryx_u64(x184, x149, x171);
+ uint64_t x189, uint8_t x190 = addcarryx_u64(x187, x151, x174);
+ uint64_t x192, uint64_t x193 = mulx_u64(x177, 0xffffffffffffffffL);
+ uint64_t x195, uint64_t x196 = mulx_u64(x177, 0xffffffff);
+ uint64_t x198, uint64_t x199 = mulx_u64(x177, 0xffffffff00000001L);
+ uint64_t x201, uint8_t x202 = addcarryx_u64(0x0, x193, x195);
+ uint64_t x204, uint8_t x205 = addcarryx_u64(x202, x196, 0x0);
+ uint64_t x207, uint8_t x208 = addcarryx_u64(x205, 0x0, x198);
+ uint64_t x210, uint8_t _ = addcarryx_u64(0x0, x208, x199);
+ uint64_t _, uint8_t x214 = addcarryx_u64(0x0, x177, x192);
+ uint64_t x216, uint8_t x217 = addcarryx_u64(x214, x180, x201);
+ uint64_t x219, uint8_t x220 = addcarryx_u64(x217, x183, x204);
+ uint64_t x222, uint8_t x223 = addcarryx_u64(x220, x186, x207);
+ uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x189, x210);
+ uint8_t x227 = x226 + x190;
+ uint64_t x229, uint64_t x230 = mulx_u64(x8, x11);
+ uint64_t x232, uint64_t x233 = mulx_u64(x8, x13);
+ uint64_t x235, uint64_t x236 = mulx_u64(x8, x15);
+ uint64_t x238, uint64_t x239 = mulx_u64(x8, x14);
+ uint64_t x241, uint8_t x242 = addcarryx_u64(0x0, x230, x232);
+ uint64_t x244, uint8_t x245 = addcarryx_u64(x242, x233, x235);
uint64_t x247, uint8_t x248 = addcarryx_u64(x245, x236, x238);
- uint64_t x250, uint8_t x251 = addcarryx_u64(x248, x239, x241);
- uint64_t x253, uint8_t _ = addcarryx_u64(0x0, x251, x242);
- uint64_t x256, uint8_t x257 = addcarryx_u64(0x0, x219, x232);
+ uint64_t x250, uint8_t _ = addcarryx_u64(0x0, x248, x239);
+ uint64_t x253, uint8_t x254 = addcarryx_u64(0x0, x216, x229);
+ uint64_t x256, uint8_t x257 = addcarryx_u64(x254, x219, x241);
uint64_t x259, uint8_t x260 = addcarryx_u64(x257, x222, x244);
uint64_t x262, uint8_t x263 = addcarryx_u64(x260, x225, x247);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x228, x250);
- uint64_t x268, uint8_t _ = addcarryx_u64(x266, x230, x253);
- uint64_t x270 = x256 & 0xffffffffffffffffL;
- uint128_t x271 = (uint128_t) x270 * 0xffffffffffffffffL;
- uint64_t x272 = (uint64_t) x271 & 0xffffffffffffffffL;
- uint64_t x273 = (uint64_t) (x271 >> 0x40);
- uint128_t x274 = (uint128_t) x270 * 0xffffffff;
- uint64_t x275 = (uint64_t) x274 & 0xffffffffffffffffL;
- uint64_t x276 = (uint64_t) (x274 >> 0x40);
- uint128_t x277 = (uint128_t) x270 * 0xffffffff00000001L;
- uint64_t x278 = (uint64_t) x277 & 0xffffffffffffffffL;
- uint64_t x279 = (uint64_t) (x277 >> 0x40);
- uint64_t x281, uint8_t x282 = addcarryx_u64(0x0, x273, x275);
- uint64_t x284, uint8_t x285 = addcarryx_u64(x282, x276, 0x0);
- uint64_t x287, uint8_t x288 = addcarryx_u64(x285, 0x0, x278);
- uint64_t x290, uint8_t _ = addcarryx_u64(0x0, x288, x279);
- uint64_t _, uint8_t x294 = addcarryx_u64(0x0, x256, x272);
- uint64_t x296, uint8_t x297 = addcarryx_u64(x294, x259, x281);
- uint64_t x299, uint8_t x300 = addcarryx_u64(x297, x262, x284);
- uint64_t x302, uint8_t x303 = addcarryx_u64(x300, x265, x287);
- uint64_t x305, uint8_t _ = addcarryx_u64(x303, x268, x290);
- (Return x305, Return x302, Return x299, Return x296))
+ uint64_t x265, uint8_t _ = addcarryx_u64(x263, x227, x250);
+ uint64_t x268, uint64_t x269 = mulx_u64(x253, 0xffffffffffffffffL);
+ uint64_t x271, uint64_t x272 = mulx_u64(x253, 0xffffffff);
+ uint64_t x274, uint64_t x275 = mulx_u64(x253, 0xffffffff00000001L);
+ uint64_t x277, uint8_t x278 = addcarryx_u64(0x0, x269, x271);
+ uint64_t x280, uint8_t x281 = addcarryx_u64(x278, x272, 0x0);
+ uint64_t x283, uint8_t x284 = addcarryx_u64(x281, 0x0, x274);
+ uint64_t x286, uint8_t _ = addcarryx_u64(0x0, x284, x275);
+ uint64_t _, uint8_t x290 = addcarryx_u64(0x0, x253, x268);
+ uint64_t x292, uint8_t x293 = addcarryx_u64(x290, x256, x277);
+ uint64_t x295, uint8_t x296 = addcarryx_u64(x293, x259, x280);
+ uint64_t x298, uint8_t x299 = addcarryx_u64(x296, x262, x283);
+ uint64_t x301, uint8_t _ = addcarryx_u64(x299, x265, x286);
+ (Return x301, Return x298, Return x295, Return x292))
(x, x0)%core
: word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/IntegrationTestMontgomeryP256_128Display.log b/src/Specific/IntegrationTestMontgomeryP256_128Display.log
index 382fb3bad..1eebdfdca 100644
--- a/src/Specific/IntegrationTestMontgomeryP256_128Display.log
+++ b/src/Specific/IntegrationTestMontgomeryP256_128Display.log
@@ -2,49 +2,31 @@
Interp-η
(λ var : Syntax.base_type → Type,
λ '(x4, x5, (x6, x7))%core,
- uint256_t x8 = (uint256_t) x5 * x7;
- uint128_t x9 = (uint128_t) x8 & 0xffffffffffffffffffffffffffffffffL;
- uint128_t x10 = (uint128_t) (x8 >> 0x80);
- uint256_t x11 = (uint256_t) x5 * x6;
- uint128_t x12 = (uint128_t) x11 & 0xffffffffffffffffffffffffffffffffL;
- uint128_t x13 = (uint128_t) (x11 >> 0x80);
- uint128_t x15, uint8_t x16 = Op (Syntax.AddWithGetCarry 128 (Syntax.TWord 3) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 3)) (0x0, Return x10, Return x12);
- uint128_t x18, uint8_t _ = Op (Syntax.AddWithGetCarry 128 (Syntax.TWord 3) (Syntax.TWord 3) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 3)) (0x0, Return x16, Return x13);
- uint128_t x20 = x9 & 0xffffffffffffffffffffffffffffffffL;
- uint256_t x21 = (uint256_t) x20 * 0xffffffffffffffffffffffffL;
- uint128_t x22 = (uint128_t) x21 & 0xffffffffffffffffffffffffffffffffL;
- uint128_t x23 = (uint128_t) (x21 >> 0x80);
- uint256_t x24 = (uint256_t) x20 * 0xffffffff000000010000000000000000L;
- uint128_t x25 = (uint128_t) x24 & 0xffffffffffffffffffffffffffffffffL;
- uint128_t x26 = (uint128_t) (x24 >> 0x80);
- uint128_t x28, uint8_t x29 = Op (Syntax.AddWithGetCarry 128 (Syntax.TWord 3) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 3)) (0x0, Return x23, Return x25);
- uint128_t x31, uint8_t _ = Op (Syntax.AddWithGetCarry 128 (Syntax.TWord 3) (Syntax.TWord 3) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 3)) (0x0, Return x29, Return x26);
- uint128_t _, uint8_t x35 = Op (Syntax.AddWithGetCarry 128 (Syntax.TWord 3) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 3)) (0x0, Return x9, Return x22);
- uint128_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 128 (Syntax.TWord 3) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 3)) (Return x35, Return x15, Return x28);
- uint128_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 128 (Syntax.TWord 3) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 3)) (Return x38, Return x18, Return x31);
- uint256_t x42 = (uint256_t) x4 * x7;
- uint128_t x43 = (uint128_t) x42 & 0xffffffffffffffffffffffffffffffffL;
- uint128_t x44 = (uint128_t) (x42 >> 0x80);
- uint256_t x45 = (uint256_t) x4 * x6;
- uint128_t x46 = (uint128_t) x45 & 0xffffffffffffffffffffffffffffffffL;
- uint128_t x47 = (uint128_t) (x45 >> 0x80);
- uint128_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 128 (Syntax.TWord 3) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 3)) (0x0, Return x44, Return x46);
- uint128_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 128 (Syntax.TWord 3) (Syntax.TWord 3) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 3)) (0x0, Return x50, Return x47);
- uint128_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 128 (Syntax.TWord 3) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 3)) (0x0, Return x37, Return x43);
- uint128_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 128 (Syntax.TWord 3) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 3)) (Return x56, Return x40, Return x49);
- uint128_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 128 (Syntax.TWord 3) (Syntax.TWord 3) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 3)) (Return x59, Return x41, Return x52);
- uint128_t x63 = x55 & 0xffffffffffffffffffffffffffffffffL;
- uint256_t x64 = (uint256_t) x63 * 0xffffffffffffffffffffffffL;
- uint128_t x65 = (uint128_t) x64 & 0xffffffffffffffffffffffffffffffffL;
- uint128_t x66 = (uint128_t) (x64 >> 0x80);
- uint256_t x67 = (uint256_t) x63 * 0xffffffff000000010000000000000000L;
- uint128_t x68 = (uint128_t) x67 & 0xffffffffffffffffffffffffffffffffL;
- uint128_t x69 = (uint128_t) (x67 >> 0x80);
- uint128_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 128 (Syntax.TWord 3) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 3)) (0x0, Return x66, Return x68);
- uint128_t x74, uint8_t _ = Op (Syntax.AddWithGetCarry 128 (Syntax.TWord 3) (Syntax.TWord 3) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 3)) (0x0, Return x72, Return x69);
- uint128_t _, uint8_t x78 = Op (Syntax.AddWithGetCarry 128 (Syntax.TWord 3) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 3)) (0x0, Return x55, Return x65);
- uint128_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 128 (Syntax.TWord 3) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 3)) (Return x78, Return x58, Return x71);
- uint128_t x83, uint8_t _ = Op (Syntax.AddWithGetCarry 128 (Syntax.TWord 3) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 7) (Syntax.TWord 3)) (Return x81, Return x61, Return x74);
- (Return x83, Return x80))
+ uint128_t x9, uint128_t x10 = mulx_u128(x5, x7);
+ uint128_t x12, uint128_t x13 = mulx_u128(x5, x6);
+ uint128_t x15, uint8_t x16 = addcarryx_u128(0x0, x10, x12);
+ uint128_t x18, uint8_t _ = addcarryx_u128(0x0, x16, x13);
+ uint128_t x21, uint128_t x22 = mulx_u128(x9, 0xffffffffffffffffffffffffL);
+ uint128_t x24, uint128_t x25 = mulx_u128(x9, 0xffffffff000000010000000000000000L);
+ uint128_t x27, uint8_t x28 = addcarryx_u128(0x0, x22, x24);
+ uint128_t x30, uint8_t _ = addcarryx_u128(0x0, x28, x25);
+ uint128_t _, uint8_t x34 = addcarryx_u128(0x0, x9, x21);
+ uint128_t x36, uint8_t x37 = addcarryx_u128(x34, x15, x27);
+ uint128_t x39, uint8_t x40 = addcarryx_u128(x37, x18, x30);
+ uint128_t x42, uint128_t x43 = mulx_u128(x4, x7);
+ uint128_t x45, uint128_t x46 = mulx_u128(x4, x6);
+ uint128_t x48, uint8_t x49 = addcarryx_u128(0x0, x43, x45);
+ uint128_t x51, uint8_t _ = addcarryx_u128(0x0, x49, x46);
+ uint128_t x54, uint8_t x55 = addcarryx_u128(0x0, x36, x42);
+ uint128_t x57, uint8_t x58 = addcarryx_u128(x55, x39, x48);
+ uint128_t x60, uint8_t _ = addcarryx_u128(x58, x40, x51);
+ uint128_t x63, uint128_t x64 = mulx_u128(x54, 0xffffffffffffffffffffffffL);
+ uint128_t x66, uint128_t x67 = mulx_u128(x54, 0xffffffff000000010000000000000000L);
+ uint128_t x69, uint8_t x70 = addcarryx_u128(0x0, x64, x66);
+ uint128_t x72, uint8_t _ = addcarryx_u128(0x0, x70, x67);
+ uint128_t _, uint8_t x76 = addcarryx_u128(0x0, x54, x63);
+ uint128_t x78, uint8_t x79 = addcarryx_u128(x76, x57, x69);
+ uint128_t x81, uint8_t _ = addcarryx_u128(x79, x60, x72);
+ (Return x81, Return x78))
(x, x0)%core
: word128 * word128 → word128 * word128 → ReturnType (uint128_t * uint128_t)