solidity/test/libyul/evmCodeTransform/stackReuse/reuse_slots_function.yul

44 lines
737 B
Plaintext
Raw Normal View History

2021-03-09 13:53:10 +00:00
{
function f() -> x, y, z, t {}
let a, b, c, d := f() let x1 := 2 let y1 := 3 mstore(x1, a) mstore(y1, c)
}
// ====
// stackOptimization: true
// ----
2021-09-15 15:01:40 +00:00
// /* "":58:61 */
// tag_2
2021-11-01 13:19:33 +00:00
// tag_1
2021-09-15 15:01:40 +00:00
// jump // in
2021-11-01 13:19:33 +00:00
// tag_2:
2021-09-15 15:01:40 +00:00
// /* "":62:73 */
// pop
// swap2
// swap1
// pop
// /* "":72:73 */
// 0x02
// /* "":74:85 */
// swap1
// /* "":84:85 */
// 0x03
// /* "":86:99 */
// swap2
// mstore
// /* "":100:113 */
// mstore
// /* "":0:115 */
// stop
// /* "":6:35 */
2021-11-01 13:19:33 +00:00
// tag_1:
2021-09-15 15:01:40 +00:00
// /* "":25:26 */
// 0x00
// /* "":28:29 */
// 0x00
// /* "":31:32 */
// 0x00
// /* "":22:23 */
// 0x00
// /* "":6:35 */
// swap4
// jump // out