diff options
author | Jason Gross <jgross@mit.edu> | 2017-04-14 19:00:15 -0400 |
---|---|---|
committer | Jason Gross <jgross@mit.edu> | 2017-04-14 19:00:15 -0400 |
commit | e58b62a35a51e20f96e4aa1c8b8e179ebdbee930 (patch) | |
tree | 1804c9dd0e1aa640688975e34dc6a065a4fad824 /src | |
parent | 784aaa532507c638cfad93e5b3cf2fec00053339 (diff) |
Add hand-cse'd version of square
cc @andres-erbsen
Diffstat (limited to 'src')
-rw-r--r-- | src/Specific/IntegrationTestSquareDisplayHandPostLinearizedCSE.log | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/src/Specific/IntegrationTestSquareDisplayHandPostLinearizedCSE.log b/src/Specific/IntegrationTestSquareDisplayHandPostLinearizedCSE.log new file mode 100644 index 000000000..ea1954c7c --- /dev/null +++ b/src/Specific/IntegrationTestSquareDisplayHandPostLinearizedCSE.log @@ -0,0 +1,68 @@ +λ x : word64 * word64 * word64 * word64 * word64, +Interp-η +(λ var : Syntax.base_type → Type, + λ '(x7, x8, x6, x4, x2)%core, + uint128_t x9 = (uint128_t) x2 * (uint128_t) x7; + uint128_t x10 = (uint128_t) x4 * (uint128_t) x8; + uint128_t x11 = (uint128_t) x6 * (uint128_t) x6; + uint128_t x14 = x10 + x9; + uint128_t x15 = x11 + x14; + uint128_t x16 = x10 + x15; + uint128_t x17 = x9 + x16; + uint128_t x18 = (uint128_t) x2 * (uint128_t) x8; + uint128_t x19 = (uint128_t) x4 * (uint128_t) x6; + uint128_t x22 = x19 + x18; + uint128_t x23 = x19 + x22; + uint128_t x24 = x18 + x23; + uint128_t x25 = (uint128_t) x7 * (uint128_t) x7; + uint128_t x26 = (uint128_t) 0x13 * x25; + uint128_t x27 = x24 + x26; + uint128_t x28 = (uint128_t) x2 * (uint128_t) x6; + uint128_t x29 = (uint128_t) x4 * (uint128_t) x4; + uint128_t x31 = x29 + x28; + uint128_t x32 = x28 + x31; + uint128_t x33 = (uint128_t) x8 * (uint128_t) x7; + uint128_t x35 = x33 + x33; + uint128_t x36 = (uint128_t) 0x13 * x35; + uint128_t x37 = x32 + x36; + uint128_t x38 = (uint128_t) x2 * (uint128_t) x4; + uint128_t x40 = x38 + x38; + uint128_t x41 = (uint128_t) x6 * (uint128_t) x7; + uint128_t x42 = (uint128_t) x8 * (uint128_t) x8; + uint128_t x44 = x42 + x41; + uint128_t x45 = x41 + x44; + uint128_t x46 = (uint128_t) 0x13 * x45; + uint128_t x47 = x40 + x46; + uint128_t x48 = (uint128_t) x2 * (uint128_t) x2; + uint128_t x49 = (uint128_t) x4 * (uint128_t) x7; + uint128_t x50 = (uint128_t) x6 * (uint128_t) x8; + uint128_t x53 = x50 + x49; + uint128_t x54 = x50 + x53; + uint128_t x55 = x49 + x54; + uint128_t x56 = (uint128_t) 0x13 * x55; + uint128_t x57 = x48 + x56; + uint64_t x58 = (uint64_t) (x57 >> 0x33); + uint128_t x59 = (uint128_t) x58 + x47; + uint64_t x60 = (uint64_t) (x59 >> 0x33); + uint128_t x61 = (uint128_t) x60 + x37; + uint64_t x62 = (uint64_t) (x61 >> 0x33); + uint128_t x63 = (uint128_t) x62 + x27; + uint64_t x64 = (uint64_t) (x63 >> 0x33); + uint128_t x65 = (uint128_t) x64 + x17; + uint64_t x66 = (uint64_t) x57 & 0x7ffffffffffff; + uint64_t x67 = (uint64_t) (x65 >> 0x33); + uint64_t x68 = 0x13 * x67; + uint64_t x69 = x66 + x68; + uint64_t x70 = (uint64_t) (x69 >> 0x33); + uint64_t x71 = (uint64_t) x59 & 0x7ffffffffffff; + uint64_t x72 = x70 + x71; + uint64_t x73 = (uint64_t) x65 & 0x7ffffffffffff; + uint64_t x74 = (uint64_t) x63 & 0x7ffffffffffff; + uint64_t x75 = (uint64_t) (x72 >> 0x33); + uint64_t x76 = (uint64_t) x61 & 0x7ffffffffffff; + uint64_t x77 = x75 + x76; + uint64_t x78 = x72 & 0x7ffffffffffff; + uint64_t x79 = x69 & 0x7ffffffffffff; + (Return x73, Return x74, Return x77, Return x78, Return x79)) +x + : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t) |