Test updates.

This commit is contained in:
Daniel Kirchner
2021-08-17 19:00:28 +02:00
parent 442666d181
commit f9e57dd642
180 changed files with 1278 additions and 1219 deletions
+2 -2
View File
@@ -11,7 +11,7 @@ IR:
object "C_81" {
code {
/// @src 0:82:370
mstore(64, 128)
mstore(64, memoryguard(128))
if callvalue() { revert_error_ca66f745a3ce8ff40e2ccaf1ad45db7774001b90d25810abd9040049be7bf4bb() }
constructor_C_81()
@@ -41,7 +41,7 @@ object "C_81" {
object "C_81_deployed" {
code {
/// @src 0:82:370
mstore(64, 128)
mstore(64, memoryguard(128))
if iszero(lt(calldatasize(), 4))
{
+2 -2
View File
@@ -41,7 +41,7 @@
},
"abi_decode_tuple_t_uint256":
{
"entryPoint": 281,
"entryPoint": 265,
"parameterSlots": 2,
"returnSlots": 1
},
@@ -52,7 +52,7 @@
},
"panic_error_0x32":
{
"entryPoint": 306,
"entryPoint": 287,
"parameterSlots": 0,
"returnSlots": 0
}
@@ -11,18 +11,19 @@ object "C_7" {
code {
{
/// @src 0:82:117
mstore(64, 128)
let _1 := memoryguard(0x80)
mstore(64, _1)
if callvalue() { revert(0, 0) }
let _1 := datasize("C_7_deployed")
codecopy(128, dataoffset("C_7_deployed"), _1)
return(128, _1)
let _2 := datasize("C_7_deployed")
codecopy(_1, dataoffset("C_7_deployed"), _2)
return(_1, _2)
}
}
object "C_7_deployed" {
code {
{
/// @src 0:82:117
mstore(64, 128)
mstore(64, memoryguard(0x80))
revert(0, 0)
}
}
@@ -43,18 +44,19 @@ object "D_10" {
code {
{
/// @src 0:118:137
mstore(64, 128)
let _1 := memoryguard(0x80)
mstore(64, _1)
if callvalue() { revert(0, 0) }
let _1 := datasize("D_10_deployed")
codecopy(128, dataoffset("D_10_deployed"), _1)
return(128, _1)
let _2 := datasize("D_10_deployed")
codecopy(_1, dataoffset("D_10_deployed"), _2)
return(_1, _2)
}
}
object "D_10_deployed" {
code {
{
/// @src 0:118:137
mstore(64, 128)
mstore(64, memoryguard(0x80))
revert(0, 0)
}
}
+32 -29
View File
@@ -11,18 +11,19 @@ object "C_3" {
code {
{
/// @src 0:82:95
mstore(64, 128)
let _1 := memoryguard(0x80)
mstore(64, _1)
if callvalue() { revert(0, 0) }
let _1 := datasize("C_3_deployed")
codecopy(128, dataoffset("C_3_deployed"), _1)
return(128, _1)
let _2 := datasize("C_3_deployed")
codecopy(_1, dataoffset("C_3_deployed"), _2)
return(_1, _2)
}
}
object "C_3_deployed" {
code {
{
/// @src 0:82:95
mstore(64, 128)
mstore(64, memoryguard(0x80))
revert(0, 0)
}
}
@@ -43,46 +44,47 @@ object "D_16" {
code {
{
/// @src 0:96:165
mstore(64, 128)
let _1 := memoryguard(0x80)
mstore(64, _1)
if callvalue() { revert(0, 0) }
let _1 := datasize("D_16_deployed")
codecopy(128, dataoffset("D_16_deployed"), _1)
return(128, _1)
let _2 := datasize("D_16_deployed")
codecopy(_1, dataoffset("D_16_deployed"), _2)
return(_1, _2)
}
}
object "D_16_deployed" {
code {
{
/// @src 0:96:165
mstore(64, 128)
let _1 := memoryguard(0x80)
mstore(64, _1)
if iszero(lt(calldatasize(), 4))
{
let _1 := 0
if eq(0x26121ff0, shr(224, calldataload(_1)))
let _2 := 0
if eq(0x26121ff0, shr(224, calldataload(_2)))
{
if callvalue() { revert(_1, _1) }
if slt(add(calldatasize(), not(3)), _1) { revert(_1, _1) }
/// @src 0:149:156
let _2 := datasize("C_3")
let _3 := add(/** @src 0:96:165 */ 128, /** @src 0:149:156 */ _2)
if or(gt(_3, 0xffffffffffffffff), lt(_3, /** @src 0:96:165 */ 128))
if callvalue() { revert(_2, _2) }
if slt(add(calldatasize(), not(3)), _2) { revert(_2, _2) }
/// @src 0:149:156
let _3 := datasize("C_3")
let _4 := add(_1, _3)
if or(gt(_4, 0xffffffffffffffff), lt(_4, _1))
{
/// @src 0:96:165
mstore(_1, shl(224, 0x4e487b71))
mstore(_2, shl(224, 0x4e487b71))
mstore(4, 0x41)
revert(_1, 0x24)
revert(_2, 0x24)
}
/// @src 0:149:156
datacopy(/** @src 0:96:165 */ 128, /** @src 0:149:156 */ dataoffset("C_3"), _2)
if iszero(create(/** @src 0:96:165 */ _1, 128, /** @src 0:149:156 */ _2))
datacopy(_1, dataoffset("C_3"), _3)
if iszero(create(/** @src 0:96:165 */ _2, /** @src 0:149:156 */ _1, sub(_4, _1)))
{
/// @src 0:96:165
let pos := mload(64)
returndatacopy(pos, _1, returndatasize())
returndatacopy(pos, _2, returndatasize())
revert(pos, returndatasize())
}
return(mload(64), _1)
return(mload(64), _2)
}
}
revert(0, 0)
@@ -92,18 +94,19 @@ object "D_16" {
code {
{
/// @src 0:82:95
mstore(64, 128)
let _1 := memoryguard(0x80)
mstore(64, _1)
if callvalue() { revert(0, 0) }
let _1 := datasize("C_3_deployed")
codecopy(128, dataoffset("C_3_deployed"), _1)
return(128, _1)
let _2 := datasize("C_3_deployed")
codecopy(_1, dataoffset("C_3_deployed"), _2)
return(_1, _2)
}
}
object "C_3_deployed" {
code {
{
/// @src 0:82:95
mstore(64, 128)
mstore(64, memoryguard(0x80))
revert(0, 0)
}
}
@@ -22,15 +22,16 @@ object "D_12" {
code {
{
/// @src 0:82:161
mstore(64, 128)
let _1 := memoryguard(0x80)
mstore(64, _1)
if iszero(lt(calldatasize(), 4))
{
let _1 := 0
if eq(0x26121ff0, shr(224, calldataload(_1)))
let _2 := 0
if eq(0x26121ff0, shr(224, calldataload(_2)))
{
if callvalue() { revert(_1, _1) }
if slt(add(calldatasize(), not(3)), _1) { revert(_1, _1) }
return(128, _1)
if callvalue() { revert(_2, _2) }
if slt(add(calldatasize(), not(3)), _2) { revert(_2, _2) }
return(_1, _2)
}
}
revert(0, 0)
@@ -11,11 +11,12 @@ object "D_8" {
code {
{
/// @src 0:82:153
mstore(64, 128)
let _1 := memoryguard(0x80)
mstore(64, _1)
if callvalue() { revert(0, 0) }
let _1 := datasize("D_8_deployed")
codecopy(128, dataoffset("D_8_deployed"), _1)
return(128, _1)
let _2 := datasize("D_8_deployed")
codecopy(_1, dataoffset("D_8_deployed"), _2)
return(_1, _2)
}
}
object "D_8_deployed" {
@@ -11,11 +11,12 @@ object "C_7" {
code {
{
/// @src 0:62:285
mstore(64, 128)
let _1 := memoryguard(0x80)
mstore(64, _1)
if callvalue() { revert(0, 0) }
let _1 := datasize("C_7_deployed")
codecopy(128, dataoffset("C_7_deployed"), _1)
return(128, _1)
let _2 := datasize("C_7_deployed")
codecopy(_1, dataoffset("C_7_deployed"), _2)
return(_1, _2)
}
}
object "C_7_deployed" {
+6 -5
View File
@@ -11,18 +11,19 @@ object "C_59" {
code {
{
/// @src 0:346:625
mstore(64, 128)
let _1 := memoryguard(0x80)
mstore(64, _1)
if callvalue() { revert(0, 0) }
let _1 := datasize("C_59_deployed")
codecopy(128, dataoffset("C_59_deployed"), _1)
return(128, _1)
let _2 := datasize("C_59_deployed")
codecopy(_1, dataoffset("C_59_deployed"), _2)
return(_1, _2)
}
}
object "C_59_deployed" {
code {
{
/// @src 0:346:625
mstore(64, 128)
mstore(64, memoryguard(0x80))
if iszero(lt(calldatasize(), 4))
{
let _1 := 0
+1 -3
View File
@@ -23,7 +23,7 @@ object "MyContract" {
Binary representation:
33600055600b806011600039806000f3fe60005460005260206000f3
33600055600b8060106000396000f3fe60005460005260206000f3
Text representation:
/* "object_compiler/input.yul":128:136 */
@@ -41,8 +41,6 @@ Text representation:
0x00
/* "object_compiler/input.yul":205:260 */
codecopy
/* "object_compiler/input.yul":275:294 */
dup1
/* "object_compiler/input.yul":125:126 */
0x00
/* "object_compiler/input.yul":265:295 */
@@ -11,18 +11,19 @@ object "Arraysum_34" {
code {
{
/// @src 0:80:429
mstore(64, 128)
let _1 := memoryguard(0x80)
mstore(64, _1)
if callvalue() { revert(0, 0) }
let _1 := datasize("Arraysum_34_deployed")
codecopy(128, dataoffset("Arraysum_34_deployed"), _1)
return(128, _1)
let _2 := datasize("Arraysum_34_deployed")
codecopy(_1, dataoffset("Arraysum_34_deployed"), _2)
return(_1, _2)
}
}
object "Arraysum_34_deployed" {
code {
{
/// @src 0:80:429
mstore(64, 128)
mstore(64, memoryguard(0x80))
if iszero(lt(calldatasize(), 4))
{
let _1 := 0
@@ -152,20 +152,23 @@ sub_0: assembly {
jump // out
/* "#utility.yul":196:421 */
tag_22:
/* "#utility.yul":236:239 */
0x00
/* "#utility.yul":267:268 */
dup3
dup2
/* "#utility.yul":263:269 */
not
/* "#utility.yul":260:261 */
dup3
dup2
/* "#utility.yul":257:270 */
gt
/* "#utility.yul":254:390 */
iszero
tag_30
tag_27
jumpi
/* "#utility.yul":406:415 */
add
swap1
/* "#utility.yul":196:421 */
jump // out
tag_27:
pop
pop
pop
/* "#utility.yul":312:322 */
0x4e487b71
/* "#utility.yul":307:310 */
@@ -188,16 +191,9 @@ sub_0: assembly {
0x00
/* "#utility.yul":365:380 */
revert
/* "#utility.yul":254:390 */
tag_30:
pop
/* "#utility.yul":406:415 */
add
swap1
/* "#utility.yul":196:421 */
jump // out
/* "#utility.yul":426:553 */
tag_26:
pop
/* "#utility.yul":487:497 */
0x4e487b71
/* "#utility.yul":482:485 */
@@ -157,20 +157,23 @@ sub_0: assembly {
jump // out
/* "#utility.yul":196:421 */
tag_19:
/* "#utility.yul":236:239 */
0x00
/* "#utility.yul":267:268 */
dup3
dup2
/* "#utility.yul":263:269 */
not
/* "#utility.yul":260:261 */
dup3
dup2
/* "#utility.yul":257:270 */
gt
/* "#utility.yul":254:390 */
iszero
tag_26
tag_23
jumpi
/* "#utility.yul":406:415 */
add
swap1
/* "#utility.yul":196:421 */
jump // out
tag_23:
pop
pop
pop
/* "#utility.yul":312:322 */
0x4e487b71
/* "#utility.yul":307:310 */
@@ -193,16 +196,9 @@ sub_0: assembly {
0x00
/* "#utility.yul":365:380 */
revert
/* "#utility.yul":254:390 */
tag_26:
pop
/* "#utility.yul":406:415 */
add
swap1
/* "#utility.yul":196:421 */
jump // out
/* "#utility.yul":426:553 */
tag_22:
pop
/* "#utility.yul":487:497 */
0x4e487b71
/* "#utility.yul":482:485 */
+2 -2
View File
@@ -11,7 +11,7 @@ IR:
object "C_15" {
code {
/// @src 0:59:147
mstore(64, 128)
mstore(64, memoryguard(128))
if callvalue() { revert_error_ca66f745a3ce8ff40e2ccaf1ad45db7774001b90d25810abd9040049be7bf4bb() }
constructor_C_15()
@@ -56,7 +56,7 @@ object "C_15" {
object "C_15_deployed" {
code {
/// @src 0:59:147
mstore(64, 128)
mstore(64, memoryguard(128))
if iszero(lt(calldatasize(), 4))
{
@@ -17,7 +17,7 @@
(local $z3 i64)
(local $_1 i64)
(block $label_
(local.set $p (call $u256_to_i32_726))
(local.set $p (call $u256_to_i32_716))
(local.set $r (i32.add (local.get $p) (i32.const 64)))
(if (i32.lt_u (local.get $r) (local.get $p)) (then
(unreachable)))
@@ -30,14 +30,14 @@
(call $eth.getCallValue (i32.const 0))
(local.set $z3 (i64.load (i32.const 8)))
(if (i32.eqz (i64.eqz (i64.or (i64.or (i64.const 0) (i64.const 0)) (i64.or (local.get $z3) (i64.load (i32.const 0)))))) (then
(call $eth.revert (call $to_internal_i32ptr) (call $u256_to_i32_344))))
(call $eth.revert (call $to_internal_i32ptr_334) (call $u256_to_i32_333))))
(local.set $_1 (datasize \"C_3_deployed\"))
(call $eth.codeCopy (call $to_internal_i32ptr_348) (call $u256_to_i32 (dataoffset \"C_3_deployed\")) (call $u256_to_i32 (local.get $_1)))
(call $eth.finish (call $to_internal_i32ptr_348) (call $u256_to_i32 (local.get $_1)))
(call $eth.codeCopy (call $to_internal_i32ptr) (call $u256_to_i32 (dataoffset \"C_3_deployed\")) (call $u256_to_i32 (local.get $_1)))
(call $eth.finish (call $to_internal_i32ptr) (call $u256_to_i32 (local.get $_1)))
)
)
(func $u256_to_i32_344
(func $u256_to_i32_333
(result i32)
(local $v i32)
(local $_1 i64)
@@ -68,7 +68,7 @@
(local.get $v)
)
(func $u256_to_i32_726
(func $u256_to_i32_716
(result i32)
(local $v i32)
(block $label__3
@@ -82,12 +82,12 @@
(local.get $v)
)
(func $to_internal_i32ptr
(func $to_internal_i32ptr_334
(result i32)
(local $r i32)
(local $p i32)
(block $label__4
(local.set $p (call $u256_to_i32_344))
(local.set $p (call $u256_to_i32_333))
(local.set $r (i32.add (local.get $p) (i32.const 64)))
(if (i32.lt_u (local.get $r) (local.get $p)) (then
(unreachable)))
@@ -96,7 +96,7 @@
(local.get $r)
)
(func $to_internal_i32ptr_348
(func $to_internal_i32ptr
(result i32)
(local $r i32)
(local $v i32)
@@ -9,7 +9,7 @@
object \"C_7\" {
code {
/// @src 0:79:121
mstore(64, 128)
mstore(64, memoryguard(128))
if callvalue()
{
revert_error_ca66f745a3ce8ff40e2ccaf1ad45db7774001b90d25810abd9040049be7bf4bb()
@@ -28,7 +28,7 @@ object \"C_7\" {
object \"C_7_deployed\" {
code {
/// @src 0:79:121
mstore(64, 128)
mstore(64, memoryguard(128))
if iszero(lt(calldatasize(), 4))
{
let selector := shift_right_224_unsigned(calldataload(0))
@@ -10,7 +10,7 @@
object \"C_7\" {
code {
/// @src 0:79:121
mstore(64, 128)
mstore(64, memoryguard(128))
if callvalue() { revert_error_ca66f745a3ce8ff40e2ccaf1ad45db7774001b90d25810abd9040049be7bf4bb() }
constructor_C_7()
@@ -40,7 +40,7 @@ object \"C_7\" {
object \"C_7_deployed\" {
code {
/// @src 0:79:121
mstore(64, 128)
mstore(64, memoryguard(128))
if iszero(lt(calldatasize(), 4))
{
@@ -10,7 +10,7 @@
object \"C_3\" {
code {
/// @src 0:79:92
mstore(64, 128)
mstore(64, memoryguard(128))
if callvalue() { revert_error_ca66f745a3ce8ff40e2ccaf1ad45db7774001b90d25810abd9040049be7bf4bb() }
constructor_C_3()
@@ -40,7 +40,7 @@ object \"C_3\" {
object \"C_3_deployed\" {
code {
/// @src 0:79:92
mstore(64, 128)
mstore(64, memoryguard(128))
if iszero(lt(calldatasize(), 4))
{
@@ -86,7 +86,7 @@ object \"C_3\" {
object \"D_16\" {
code {
/// @src 0:93:146
mstore(64, 128)
mstore(64, memoryguard(128))
if callvalue() { revert_error_ca66f745a3ce8ff40e2ccaf1ad45db7774001b90d25810abd9040049be7bf4bb() }
constructor_D_16()
@@ -116,7 +116,7 @@ object \"D_16\" {
object \"D_16_deployed\" {
code {
/// @src 0:93:146
mstore(64, 128)
mstore(64, memoryguard(128))
if iszero(lt(calldatasize(), 4))
{
@@ -217,7 +217,7 @@ object \"D_16\" {
object \"C_3\" {
code {
/// @src 0:79:92
mstore(64, 128)
mstore(64, memoryguard(128))
if callvalue() { revert_error_ca66f745a3ce8ff40e2ccaf1ad45db7774001b90d25810abd9040049be7bf4bb() }
constructor_C_3()
@@ -247,7 +247,7 @@ object \"D_16\" {
object \"C_3_deployed\" {
code {
/// @src 0:79:92
mstore(64, 128)
mstore(64, memoryguard(128))
if iszero(lt(calldatasize(), 4))
{
@@ -1,10 +1,11 @@
{"contracts":{"A":{"object":{"evm":{"assembly":" /* \"A\":17:18 */
{"contracts":{"A":{"object":{"evm":{"assembly":" /* \"A\":38:39 */
0x00
/* \"A\":11:19 */
dup1
mload
/* \"A\":20:40 */
sstore
stop
","bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"<BYTECODE REMOVED>","opcodes":"<OPCODES REMOVED>","sourceMap":"<SOURCEMAP REMOVED>"}},"ir":"object \"object\" {
code {
let x := mload(0)
@@ -5,6 +5,7 @@
mload
/* \"A\":20:40 */
sstore
stop
","bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"<BYTECODE REMOVED>","opcodes":"<OPCODES REMOVED>","sourceMap":"<SOURCEMAP REMOVED>"}},"ir":"object \"object\" {
code {
let x := mload(0)
@@ -1,17 +1,14 @@
{"contracts":{"A":{"object":{"evm":{"assembly":" /* \"A\":16:17 */
0x01
dup1
/* \"A\":27:28 */
0x00
/* \"A\":20:32 */
sstore
pop
/* \"A\":50:51 */
0x02
dup1
/* \"A\":61:63 */
0x20
/* \"A\":54:67 */
sstore
pop
stop
"}}}},"errors":[{"component":"general","formattedMessage":"Yul is still experimental. Please use the output with care.","message":"Yul is still experimental. Please use the output with care.","severity":"warning","type":"Warning"}]}
@@ -25,7 +25,7 @@ object "C_6" {
Binary representation:
60806040523415600e57600080fd5b600e601c600039600e6000f3fe60806040523615600055600080fd
608060405234601557600e601b600039600e6000f35b600080fdfe60806040523615600055600080fd
Text representation:
/* "strict_asm_optimizer_steps/input.yul":45:48 */
@@ -35,19 +35,7 @@ Text representation:
/* "strict_asm_optimizer_steps/input.yul":34:49 */
mstore
/* "strict_asm_optimizer_steps/input.yul":61:72 */
callvalue
/* "strict_asm_optimizer_steps/input.yul":58:89 */
iszero
tag_1
jumpi
/* "strict_asm_optimizer_steps/input.yul":85:86 */
0x00
/* "strict_asm_optimizer_steps/input.yul":82:83 */
dup1
/* "strict_asm_optimizer_steps/input.yul":75:87 */
revert
/* "strict_asm_optimizer_steps/input.yul":58:89 */
tag_1:
jumpi(tag_1, callvalue)
/* "strict_asm_optimizer_steps/input.yul":138:162 */
dataSize(sub_0)
/* "strict_asm_optimizer_steps/input.yul":110:136 */
@@ -62,6 +50,12 @@ tag_1:
0x00
/* "strict_asm_optimizer_steps/input.yul":172:207 */
return
tag_1:
/* "strict_asm_optimizer_steps/input.yul":85:86 */
0x00
dup1
/* "strict_asm_optimizer_steps/input.yul":75:87 */
revert
stop
sub_0: assembly {
@@ -81,7 +75,6 @@ sub_0: assembly {
sstore
/* "strict_asm_optimizer_steps/input.yul":576:577 */
0x00
/* "strict_asm_optimizer_steps/input.yul":573:574 */
dup1
/* "strict_asm_optimizer_steps/input.yul":566:578 */
revert
+2 -2
View File
@@ -11,7 +11,7 @@ IR:
object "test_11" {
code {
/// @src 0:79:169
mstore(64, 128)
mstore(64, memoryguard(128))
if callvalue() { revert_error_ca66f745a3ce8ff40e2ccaf1ad45db7774001b90d25810abd9040049be7bf4bb() }
constructor_test_11()
@@ -41,7 +41,7 @@ object "test_11" {
object "test_11_deployed" {
code {
/// @src 0:79:169
mstore(64, 128)
mstore(64, memoryguard(128))
if iszero(lt(calldatasize(), 4))
{
+32 -29
View File
@@ -17,18 +17,19 @@ object "C_3" {
code {
{
/// @src 0:82:95
mstore(64, 128)
let _1 := memoryguard(0x80)
mstore(64, _1)
if callvalue() { revert(0, 0) }
let _1 := datasize("C_3_deployed")
codecopy(128, dataoffset("C_3_deployed"), _1)
return(128, _1)
let _2 := datasize("C_3_deployed")
codecopy(_1, dataoffset("C_3_deployed"), _2)
return(_1, _2)
}
}
object "C_3_deployed" {
code {
{
/// @src 0:82:95
mstore(64, 128)
mstore(64, memoryguard(0x80))
revert(0, 0)
}
}
@@ -55,46 +56,47 @@ object "D_16" {
code {
{
/// @src 0:96:165
mstore(64, 128)
let _1 := memoryguard(0x80)
mstore(64, _1)
if callvalue() { revert(0, 0) }
let _1 := datasize("D_16_deployed")
codecopy(128, dataoffset("D_16_deployed"), _1)
return(128, _1)
let _2 := datasize("D_16_deployed")
codecopy(_1, dataoffset("D_16_deployed"), _2)
return(_1, _2)
}
}
object "D_16_deployed" {
code {
{
/// @src 0:96:165
mstore(64, 128)
let _1 := memoryguard(0x80)
mstore(64, _1)
if iszero(lt(calldatasize(), 4))
{
let _1 := 0
if eq(0x26121ff0, shr(224, calldataload(_1)))
let _2 := 0
if eq(0x26121ff0, shr(224, calldataload(_2)))
{
if callvalue() { revert(_1, _1) }
if slt(add(calldatasize(), not(3)), _1) { revert(_1, _1) }
/// @src 0:149:156
let _2 := datasize("C_3")
let _3 := add(/** @src 0:96:165 */ 128, /** @src 0:149:156 */ _2)
if or(gt(_3, 0xffffffffffffffff), lt(_3, /** @src 0:96:165 */ 128))
if callvalue() { revert(_2, _2) }
if slt(add(calldatasize(), not(3)), _2) { revert(_2, _2) }
/// @src 0:149:156
let _3 := datasize("C_3")
let _4 := add(_1, _3)
if or(gt(_4, 0xffffffffffffffff), lt(_4, _1))
{
/// @src 0:96:165
mstore(_1, shl(224, 0x4e487b71))
mstore(_2, shl(224, 0x4e487b71))
mstore(4, 0x41)
revert(_1, 0x24)
revert(_2, 0x24)
}
/// @src 0:149:156
datacopy(/** @src 0:96:165 */ 128, /** @src 0:149:156 */ dataoffset("C_3"), _2)
if iszero(create(/** @src 0:96:165 */ _1, 128, /** @src 0:149:156 */ _2))
datacopy(_1, dataoffset("C_3"), _3)
if iszero(create(/** @src 0:96:165 */ _2, /** @src 0:149:156 */ _1, sub(_4, _1)))
{
/// @src 0:96:165
let pos := mload(64)
returndatacopy(pos, _1, returndatasize())
returndatacopy(pos, _2, returndatasize())
revert(pos, returndatasize())
}
return(mload(64), _1)
return(mload(64), _2)
}
}
revert(0, 0)
@@ -104,18 +106,19 @@ object "D_16" {
code {
{
/// @src 0:82:95
mstore(64, 128)
let _1 := memoryguard(0x80)
mstore(64, _1)
if callvalue() { revert(0, 0) }
let _1 := datasize("C_3_deployed")
codecopy(128, dataoffset("C_3_deployed"), _1)
return(128, _1)
let _2 := datasize("C_3_deployed")
codecopy(_1, dataoffset("C_3_deployed"), _2)
return(_1, _2)
}
}
object "C_3_deployed" {
code {
{
/// @src 0:82:95
mstore(64, 128)
mstore(64, memoryguard(0x80))
revert(0, 0)
}
}
+2 -4
View File
@@ -21,7 +21,7 @@ object "RunsTest1" {
Binary representation:
602480600d600039806000f3fe7fabc1234500000000000000000000000000000000000000000000000000000000600052
602580600c6000396000f3fe7fabc123450000000000000000000000000000000000000000000000000000000060005200
Text representation:
/* "yul_optimize_runs/input.yul":106:125 */
@@ -33,8 +33,6 @@ Text representation:
0x00
/* "yul_optimize_runs/input.yul":71:126 */
codecopy
/* "yul_optimize_runs/input.yul":145:164 */
dup1
/* "yul_optimize_runs/input.yul":80:81 */
0x00
/* "yul_optimize_runs/input.yul":135:165 */
@@ -48,5 +46,5 @@ sub_0: assembly {
0x00
/* "yul_optimize_runs/input.yul":270:288 */
mstore
stop
}
+2 -2
View File
@@ -11,7 +11,7 @@ object "C_7" {
code {
{
/// @src 0:80:112
mstore(64, 128)
mstore(64, memoryguard(0x80))
if callvalue()
{
revert_error_ca66f745a3ce8ff40e2ccaf1ad45db7774001b90d25810abd9040049be7bf4bb()
@@ -29,7 +29,7 @@ object "C_7" {
code {
{
/// @src 0:80:112
mstore(64, 128)
mstore(64, memoryguard(0x80))
if iszero(lt(calldatasize(), 4))
{
let selector := shift_right_unsigned(calldataload(0))
@@ -10,7 +10,7 @@
object \"C_54\" {
code {
/// @src 0:79:428
mstore(64, 160)
mstore(64, memoryguard(160))
if callvalue() { revert_error_ca66f745a3ce8ff40e2ccaf1ad45db7774001b90d25810abd9040049be7bf4bb() }
let _1 := copy_arguments_for_constructor_20_object_C_54()
@@ -151,7 +151,7 @@ object \"C_54\" {
object \"C_54_deployed\" {
code {
/// @src 0:79:428
mstore(64, 128)
mstore(64, memoryguard(128))
if iszero(lt(calldatasize(), 4))
{
@@ -551,7 +551,7 @@ object \"C_54\" {
object \"D_72\" {
code {
/// @src 1:91:166
mstore(64, 160)
mstore(64, memoryguard(160))
if callvalue() { revert_error_ca66f745a3ce8ff40e2ccaf1ad45db7774001b90d25810abd9040049be7bf4bb() }
let _1 := copy_arguments_for_constructor_71_object_D_72()
@@ -755,7 +755,7 @@ object \"D_72\" {
object \"D_72_deployed\" {
code {
/// @src 1:91:166
mstore(64, 128)
mstore(64, memoryguard(128))
if iszero(lt(calldatasize(), 4))
{
File diff suppressed because it is too large Load Diff
@@ -10,7 +10,7 @@
object \"C_11\" {
code {
/// @src 0:78:164
mstore(64, 128)
mstore(64, memoryguard(128))
if callvalue() { revert_error_ca66f745a3ce8ff40e2ccaf1ad45db7774001b90d25810abd9040049be7bf4bb() }
constructor_C_11()
@@ -40,7 +40,7 @@ object \"C_11\" {
object \"C_11_deployed\" {
code {
/// @src 0:78:164
mstore(64, 128)
mstore(64, memoryguard(128))
if iszero(lt(calldatasize(), 4))
{
@@ -10,7 +10,7 @@
object \"C_11\" {
code {
/// @src 0:78:158
mstore(64, 128)
mstore(64, memoryguard(128))
if callvalue() { revert_error_ca66f745a3ce8ff40e2ccaf1ad45db7774001b90d25810abd9040049be7bf4bb() }
constructor_C_11()
@@ -40,7 +40,7 @@ object \"C_11\" {
object \"C_11_deployed\" {
code {
/// @src 0:78:158
mstore(64, 128)
mstore(64, memoryguard(128))
if iszero(lt(calldatasize(), 4))
{
@@ -10,7 +10,7 @@
object \"C_11\" {
code {
/// @src 0:78:159
mstore(64, 128)
mstore(64, memoryguard(128))
if callvalue() { revert_error_ca66f745a3ce8ff40e2ccaf1ad45db7774001b90d25810abd9040049be7bf4bb() }
constructor_C_11()
@@ -40,7 +40,7 @@ object \"C_11\" {
object \"C_11_deployed\" {
code {
/// @src 0:78:159
mstore(64, 128)
mstore(64, memoryguard(128))
if iszero(lt(calldatasize(), 4))
{
@@ -10,7 +10,7 @@
object \"C_11\" {
code {
/// @src 0:78:243
mstore(64, 128)
mstore(64, memoryguard(128))
if callvalue() { revert_error_ca66f745a3ce8ff40e2ccaf1ad45db7774001b90d25810abd9040049be7bf4bb() }
constructor_C_11()
@@ -40,7 +40,7 @@ object \"C_11\" {
object \"C_11_deployed\" {
code {
/// @src 0:78:243
mstore(64, 128)
mstore(64, memoryguard(128))
if iszero(lt(calldatasize(), 4))
{
@@ -10,7 +10,7 @@
object \"C_11\" {
code {
/// @src 0:78:159
mstore(64, 128)
mstore(64, memoryguard(128))
if callvalue() { revert_error_ca66f745a3ce8ff40e2ccaf1ad45db7774001b90d25810abd9040049be7bf4bb() }
constructor_C_11()
@@ -40,7 +40,7 @@ object \"C_11\" {
object \"C_11_deployed\" {
code {
/// @src 0:78:159
mstore(64, 128)
mstore(64, memoryguard(128))
if iszero(lt(calldatasize(), 4))
{
+2 -1
View File
@@ -14,7 +14,7 @@ object "object" {
Binary representation:
612000515061616002600055
61200051506161600260005500
Text representation:
/* "yul_verbatim_msize/input.yul":125:131 */
@@ -30,3 +30,4 @@ Text representation:
0x00
/* "yul_verbatim_msize/input.yul":162:174 */
sstore
stop