solidity/test/libyul/yulOptimizerTests/functionSpecializer/partial.yul

34 lines
619 B
Plaintext
Raw Normal View History

2020-11-26 17:52:25 +00:00
{
// All arguments are constants
let x := 2
f(1, x, 3)
function f(a, b, c) {
sstore(a, b)
sstore(b, c)
// Prevents getting inlined
if calldataload(0) { leave }
}
}
// ----
// step: functionSpecializer
//
// {
// let x := 2
// f_1(x)
// function f_1(b_3)
// {
// let a_4 := 1
// let c_2 := 3
// sstore(a_4, b_3)
// sstore(b_3, c_2)
// if calldataload(0) { leave }
// }
// function f(a, b, c)
// {
// sstore(a, b)
// sstore(b, c)
// if calldataload(0) { leave }
// }
// }