Yul optimizer test updates.

This commit is contained in:
chriseth 2021-03-11 12:18:50 +01:00
parent 7aa51bcb40
commit 2c8540b1f9
4 changed files with 33 additions and 27 deletions

View File

@ -502,12 +502,12 @@
// let _2 := 0x20 // let _2 := 0x20
// dst := add(array, _2) // dst := add(array, _2)
// let src := add(offset, _2) // let src := add(offset, _2)
// let _3 := 0x40 // if gt(add(add(offset, shl(6, length)), _2), end) { revert(0, 0) }
// if gt(add(add(offset, mul(length, _3)), _2), end) { revert(0, 0) }
// let i := 0 // let i := 0
// for { } lt(i, length) { i := add(i, 1) } // for { } lt(i, length) { i := add(i, 1) }
// { // {
// if iszero(slt(add(src, _1), end)) { revert(0, 0) } // if iszero(slt(add(src, _1), end)) { revert(0, 0) }
// let _3 := 64
// let dst_1 := allocateMemory(_3) // let dst_1 := allocateMemory(_3)
// let dst_2 := dst_1 // let dst_2 := dst_1
// let src_1 := src // let src_1 := src
@ -542,7 +542,7 @@
// mstore(dst, length) // mstore(dst, length)
// dst := add(dst, _1) // dst := add(dst, _1)
// let src := add(_3, _1) // let src := add(_3, _1)
// if gt(add(add(_3, mul(length, _1)), _1), dataEnd) { revert(value2, value2) } // if gt(add(add(_3, shl(5, length)), _1), dataEnd) { revert(value2, value2) }
// let i := value2 // let i := value2
// for { } lt(i, length) { i := add(i, 1) } // for { } lt(i, length) { i := add(i, 1) }
// { // {
@ -565,6 +565,6 @@
// function array_allocation_size_array_address_dyn_memory(length) -> size // function array_allocation_size_array_address_dyn_memory(length) -> size
// { // {
// if gt(length, 0xffffffffffffffff) { revert(size, size) } // if gt(length, 0xffffffffffffffff) { revert(size, size) }
// size := add(mul(length, 0x20), 0x20) // size := add(shl(5, length), 0x20)
// } // }
// } // }

View File

@ -228,15 +228,17 @@
mstore(0x00, keccak256(0x300, mul(n, 0x80))) mstore(0x00, keccak256(0x300, mul(n, 0x80)))
} }
} }
// ====
// EVMVersion: >=istanbul
// ---- // ----
// step: fullSuite // step: fullSuite
// //
// { // {
// { // {
// let _1 := 0x80 // mstore(0x80, 7673901602397024137095011250362199966051872585513276903826533215767972925880)
// mstore(_1, 7673901602397024137095011250362199966051872585513276903826533215767972925880)
// mstore(0xa0, 8489654445897228341090914135473290831551238522473825886865492707826370766375) // mstore(0xa0, 8489654445897228341090914135473290831551238522473825886865492707826370766375)
// let notes := add(0x04, calldataload(0x04)) // let _1 := calldataload(0x04)
// let notes := add(0x04, _1)
// let m := calldataload(0x24) // let m := calldataload(0x24)
// let n := calldataload(notes) // let n := calldataload(notes)
// let _2 := 0x30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001 // let _2 := 0x30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001
@ -252,11 +254,11 @@
// mstore(0x2e0, m) // mstore(0x2e0, m)
// kn := mulmod(sub(_2, kn), challenge, _2) // kn := mulmod(sub(_2, kn), challenge, _2)
// hashCommitments(notes, n) // hashCommitments(notes, n)
// let b := add(0x300, mul(n, _1)) // let b := add(0x300, shl(7, n))
// let i := 0 // let i := 0
// for { } lt(i, n) { i := add(i, 0x01) } // for { } lt(i, n) { i := add(i, 0x01) }
// { // {
// let _3 := add(calldataload(0x04), mul(i, 0xc0)) // let _3 := add(_1, mul(i, 0xc0))
// let noteIndex := add(_3, 0x24) // let noteIndex := add(_3, 0x24)
// let k := 0 // let k := 0
// let a := calldataload(add(_3, 0x44)) // let a := calldataload(add(_3, 0x44))
@ -282,14 +284,17 @@
// let _5 := 0x40 // let _5 := 0x40
// calldatacopy(0xe0, add(_3, 164), _5) // calldatacopy(0xe0, add(_3, 164), _5)
// calldatacopy(0x20, add(_3, 100), _5) // calldatacopy(0x20, add(_3, 100), _5)
// mstore(0x120, sub(_2, c)) // let _6 := 0x120
// mstore(0x60, k) // mstore(_6, sub(_2, c))
// let _7 := 0x60
// mstore(_7, k)
// mstore(0xc0, a) // mstore(0xc0, a)
// let result := call(gas(), 7, 0, 0xe0, 0x60, 0x1a0, _5) // let result := call(gas(), 7, 0, 0xe0, _7, 0x1a0, _5)
// let result_1 := and(result, call(gas(), 7, 0, 0x20, 0x60, 0x120, _5)) // let result_1 := and(result, call(gas(), 7, 0, 0x20, _7, _6, _5))
// let result_2 := and(result_1, call(gas(), 7, 0, _1, 0x60, 0x160, _5)) // let _8 := 0x160
// let result_3 := and(result_2, call(gas(), 6, 0, 0x120, _1, 0x160, _5)) // let result_2 := and(result_1, call(gas(), 7, 0, 0x80, _7, _8, _5))
// result := and(result_3, call(gas(), 6, 0, 0x160, _1, b, _5)) // let result_3 := and(result_2, call(gas(), 6, 0, _6, 0x80, _8, _5))
// result := and(result_3, call(gas(), 6, 0, _8, 0x80, b, _5))
// if eq(i, m) // if eq(i, m)
// { // {
// mstore(0x260, mload(0x20)) // mstore(0x260, mload(0x20))
@ -299,10 +304,10 @@
// } // }
// if gt(i, m) // if gt(i, m)
// { // {
// mstore(0x60, c) // mstore(_7, c)
// let result_4 := and(result, call(gas(), 7, 0, 0x20, 0x60, 0x220, _5)) // let result_4 := and(result, call(gas(), 7, 0, 0x20, _7, 0x220, _5))
// let result_5 := and(result_4, call(gas(), 6, 0, 0x220, _1, 0x260, _5)) // let result_5 := and(result_4, call(gas(), 6, 0, 0x220, 0x80, 0x260, _5))
// result := and(result_5, call(gas(), 6, 0, 0x1a0, _1, 0x1e0, _5)) // result := and(result_5, call(gas(), 6, 0, 0x1a0, 0x80, 0x1e0, _5))
// } // }
// if iszero(result) // if iszero(result)
// { // {
@ -375,9 +380,8 @@
// let i := 0 // let i := 0
// for { } lt(i, n) { i := add(i, 0x01) } // for { } lt(i, n) { i := add(i, 0x01) }
// { // {
// let _1 := 0x80 // calldatacopy(add(0x300, shl(7, i)), add(add(notes, mul(i, 0xc0)), 0x60), 0x80)
// calldatacopy(add(0x300, mul(i, _1)), add(add(notes, mul(i, 0xc0)), 0x60), _1)
// } // }
// mstore(0, keccak256(0x300, mul(n, 0x80))) // mstore(0, keccak256(0x300, shl(7, n)))
// } // }
// } // }

View File

@ -14,6 +14,8 @@
v := calldataload(add(data, mul(i, 0x20))) v := calldataload(add(data, mul(i, 0x20)))
} }
} }
// ====
// EVMVersion: >=istanbul
// ---- // ----
// step: fullSuite // step: fullSuite
// //
@ -25,8 +27,7 @@
// let i := sum // let i := sum
// for { } lt(i, length) { i := add(i, 1) } // for { } lt(i, length) { i := add(i, 1) }
// { // {
// let _2 := 0x20 // sum := add(sum, calldataload(add(add(_1, shl(5, i)), 0x20)))
// sum := add(sum, calldataload(add(add(_1, mul(i, _2)), _2)))
// } // }
// sstore(0, sum) // sstore(0, sum)
// } // }

View File

@ -17,6 +17,8 @@
v := add(v, calldataload(7)) v := add(v, calldataload(7))
} }
} }
// ====
// EVMVersion: >=istanbul
// ---- // ----
// step: fullSuite // step: fullSuite
// //
@ -29,8 +31,7 @@
// let _2 := calldataload(7) // let _2 := calldataload(7)
// for { } lt(i, length) { i := add(i, 1) } // for { } lt(i, length) { i := add(i, 1) }
// { // {
// let _3 := 0x20 // sum := add(sum, add(calldataload(add(add(_1, shl(5, i)), 0x20)), _2))
// sum := add(sum, add(calldataload(add(add(_1, mul(i, _3)), _3)), _2))
// } // }
// sstore(0, sum) // sstore(0, sum)
// } // }