solidity/test/libyul/yulOptimizerTests/redundantAssignEliminator/for_branch.yul

27 lines
423 B
Plaintext

{
let x
let y
// Cannot be removed, because we might skip the loop
x := 1
for { } calldataload(0) { }
{
// Cannot be removed
x := 2
// Can be removed
y := 3
}
y := 8
mstore(x, 0)
}
// ====
// step: redundantAssignEliminator
// ----
// {
// let x
// let y
// x := 1
// for { } calldataload(0) { }
// { x := 2 }
// mstore(x, 0)
// }