solidity/test/cmdlineTests/name_simplifier/output

112 lines
5.0 KiB
Plaintext

Optimized IR:
/*******************************************************
* WARNING *
* Solidity to Yul compilation is still EXPERIMENTAL *
* It can result in LOSS OF FUNDS or worse *
* !USE AT YOUR OWN RISK! *
*******************************************************/
object "C_59" {
code {
{
mstore(64, 128)
if callvalue() { revert(0, 0) }
let _1 := datasize("C_59_deployed")
codecopy(128, dataoffset("C_59_deployed"), _1)
return(128, _1)
}
}
object "C_59_deployed" {
code {
{
let _1 := 64
mstore(_1, 128)
if iszero(lt(calldatasize(), 4))
{
let _2 := 0
if eq(0xf8eddcc6, shr(224, calldataload(_2)))
{
if callvalue() { revert(_2, _2) }
let _3 := 32
if slt(add(calldatasize(), not(3)), _3) { revert(_2, _2) }
let offset := calldataload(4)
let _4 := 0xffffffffffffffff
if gt(offset, _4) { revert(_2, _2) }
if iszero(slt(add(offset, 35), calldatasize())) { revert(_2, _2) }
let _5 := calldataload(add(4, offset))
if gt(_5, _4) { panic_error_0x41() }
let _6 := shl(5, _5)
let memPtr := mload(_1)
let _7 := not(31)
let newFreePtr := add(memPtr, and(add(_6, 63), _7))
if or(gt(newFreePtr, _4), lt(newFreePtr, memPtr)) { panic_error_0x41() }
mstore(_1, newFreePtr)
let dst := memPtr
mstore(memPtr, _5)
dst := add(memPtr, _3)
let dst_1 := dst
let src := add(offset, 36)
if gt(add(add(offset, _6), 36), calldatasize()) { revert(_2, _2) }
let i := _2
for { } lt(i, _5) { i := add(i, 1) }
{
if slt(sub(calldatasize(), src), _3) { revert(_2, _2) }
let memPtr_1 := mload(_1)
let newFreePtr_1 := add(memPtr_1, _3)
if or(gt(newFreePtr_1, _4), lt(newFreePtr_1, memPtr_1)) { panic_error_0x41() }
mstore(_1, newFreePtr_1)
mstore(memPtr_1, calldataload(src))
mstore(dst, memPtr_1)
dst := add(dst, _3)
src := add(src, _3)
}
if iszero(mload(memPtr)) { panic_error_0x32() }
sstore(_2, mload(mload(dst_1)))
if iszero(lt(1, mload(memPtr))) { panic_error_0x32() }
let _8 := mload(mload(add(memPtr, _1)))
sstore(0x02, _8)
let memPtr_2 := mload(_1)
let newFreePtr_2 := add(memPtr_2, 160)
if or(gt(newFreePtr_2, _4), lt(newFreePtr_2, memPtr_2)) { panic_error_0x41() }
mstore(_1, newFreePtr_2)
mstore(memPtr_2, 100)
mstore(add(memPtr_2, _3), "longstringlongstringlongstringlo")
mstore(add(memPtr_2, _1), "ngstringlongstringlongstringlong")
let _9 := 96
mstore(add(memPtr_2, _9), "stringlongstringlongstringlongst")
mstore(add(memPtr_2, 128), "ring")
let memPos := mload(_1)
mstore(memPos, _8)
mstore(add(memPos, _3), _1)
let length := mload(memPtr_2)
mstore(add(memPos, _1), length)
let i_1 := _2
for { } lt(i_1, length) { i_1 := add(i_1, _3) }
{
mstore(add(add(memPos, i_1), _9), mload(add(add(memPtr_2, i_1), _3)))
}
if gt(i_1, length)
{
mstore(add(add(memPos, length), _9), _2)
}
return(memPos, add(sub(add(memPos, and(add(length, 31), _7)), memPos), _9))
}
}
revert(0, 0)
}
function panic_error_0x32()
{
mstore(0, shl(224, 0x4e487b71))
mstore(4, 0x32)
revert(0, 0x24)
}
function panic_error_0x41()
{
mstore(0, shl(224, 0x4e487b71))
mstore(4, 0x41)
revert(0, 0x24)
}
}
}
}