mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
30 lines
603 B
Plaintext
30 lines
603 B
Plaintext
{
|
|
let a := mload(0)
|
|
// This could be more efficient:
|
|
// all cases could use the value of the variable from just before
|
|
// the switch and not just the first
|
|
switch a
|
|
case 0 { a := add(a, 4) }
|
|
default { a := add(a, 8) }
|
|
mstore(0, a)
|
|
}
|
|
// ====
|
|
// step: ssaTransform
|
|
// ----
|
|
// {
|
|
// let a_1 := mload(0)
|
|
// let a := a_1
|
|
// switch a_1
|
|
// case 0 {
|
|
// let a_2 := add(a_1, 4)
|
|
// a := a_2
|
|
// }
|
|
// default {
|
|
// let a_4 := a
|
|
// let a_3 := add(a_4, 8)
|
|
// a := a_3
|
|
// }
|
|
// let a_5 := a
|
|
// mstore(0, a_5)
|
|
// }
|