aboutsummaryrefslogtreecommitdiffstats
path: root/test/libyul/yulOptimizerTests/fullInliner/double_inline.yul
blob: ee7f5bf592508b3f0c3c8563c0e256603f7c4576 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
{
    function f(a) -> b, c { let x := mload(a) b := sload(x) c := 3 }
    let a1 := calldataload(0)
    let b3, c3 := f(a1)
    let b4, c4 := f(c3)
}
// ----
// fullInliner
// {
//     {
//         let f_a := calldataload(0)
//         let f_b
//         let f_c
//         f_b := sload(mload(f_a))
//         f_c := 3
//         let b3 := f_b
//         let f_a_2 := f_c
//         let f_b_3
//         let f_c_4
//         f_b_3 := sload(mload(f_a_2))
//         f_c_4 := 3
//         let b4 := f_b_3
//         let c4 := f_c_4
//     }
//     function f(a) -> b, c
//     {
//         b := sload(mload(a))
//         c := 3
//     }
// }