solidity/test/cmdlineTests/yul_optimizer_steps_nested_brackets/output
Nikola Matic fdc6699159 Rematerialize zero literals with default cleanup sequence
Add unused pruner step to the end of the default cleanup sequence
2023-09-04 15:40:33 +02:00

80 lines
2.9 KiB
Plaintext

Optimized IR:
/// @use-src 0:"yul_optimizer_steps_nested_brackets/input.sol"
object "C_6" {
code {
{
/// @src 0:60:103 "contract C..."
mstore(64, memoryguard(0x80))
if callvalue()
{
revert_error_ca66f745a3ce8ff40e2ccaf1ad45db7774001b90d25810abd9040049be7bf4bb()
}
let _1 := allocate_unbounded()
codecopy(_1, dataoffset("C_6_deployed"), datasize("C_6_deployed"))
return(_1, datasize("C_6_deployed"))
}
function allocate_unbounded() -> memPtr
{
let memPtr_1 := mload(64)
memPtr := memPtr_1
}
function revert_error_ca66f745a3ce8ff40e2ccaf1ad45db7774001b90d25810abd9040049be7bf4bb()
{ revert(0, 0) }
}
/// @use-src 0:"yul_optimizer_steps_nested_brackets/input.sol"
object "C_6_deployed" {
code {
{
/// @src 0:60:103 "contract C..."
mstore(64, memoryguard(0x80))
if iszero(lt(calldatasize(), 4))
{
let selector := shift_right_unsigned(calldataload(0))
if eq(0x26121ff0, selector) { external_fun_f() }
}
revert_error_42b3090547df1d2001c96683413b8cf91c1b902ef5e3cb8d9f6f304cf7446f74()
}
function shift_right_unsigned(value) -> newValue
{
let newValue_1 := shr(224, value)
newValue := newValue_1
}
function allocate_unbounded() -> memPtr
{
let memPtr_1 := mload(64)
memPtr := memPtr_1
}
function revert_error_ca66f745a3ce8ff40e2ccaf1ad45db7774001b90d25810abd9040049be7bf4bb()
{ revert(0, 0) }
function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b()
{ revert(0, 0) }
function abi_decode(headStart, dataEnd)
{
if slt(sub(dataEnd, headStart), 0)
{
revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b()
}
}
function abi_encode_tuple(headStart) -> tail
{
let tail_1 := add(headStart, 0)
tail := tail_1
}
function external_fun_f()
{
if callvalue()
{
revert_error_ca66f745a3ce8ff40e2ccaf1ad45db7774001b90d25810abd9040049be7bf4bb()
}
abi_decode(4, calldatasize())
let memPos := allocate_unbounded()
let memEnd := abi_encode_tuple(memPos)
return(memPos, sub(memEnd, memPos))
}
function revert_error_42b3090547df1d2001c96683413b8cf91c1b902ef5e3cb8d9f6f304cf7446f74()
{ revert(0, 0) }
}
data ".metadata" hex"<BYTECODE REMOVED>"
}
}