solidity/test/libyul/yulOptimizerTests/expressionSplitter/inside_function.yul

31 lines
606 B
Plaintext
Raw Normal View History

2018-10-11 13:13:42 +00:00
{
let x := mul(f(0, mload(7)), 3)
function f(a, b) -> c {
c := mul(a, mload(add(b, c)))
}
sstore(x, f(mload(2), mload(2)))
}
2019-04-01 14:33:46 +00:00
// ====
// step: expressionSplitter
2018-10-11 13:13:42 +00:00
// ----
// {
2018-10-11 19:20:04 +00:00
// let _1 := 3
// let _2 := 7
// let _3 := mload(_2)
// let _4 := 0
// let _5 := f(_4, _3)
// let x := mul(_5, _1)
2018-10-11 13:13:42 +00:00
// function f(a, b) -> c
// {
2018-10-11 19:20:04 +00:00
// let _6 := add(b, c)
// let _7 := mload(_6)
// c := mul(a, _7)
2018-10-11 13:13:42 +00:00
// }
2018-10-11 19:20:04 +00:00
// let _8 := 2
// let _9 := mload(_8)
// let _10 := 2
// let _11 := mload(_10)
// let _12 := f(_11, _9)
// sstore(x, _12)
2018-10-11 13:13:42 +00:00
// }