Fill in junk in stack layouts on terminating control flow paths.

This commit is contained in:
Daniel Kirchner
2022-03-15 18:36:55 +01:00
parent b6cd3e154c
commit 5cd98006d4
139 changed files with 433 additions and 276 deletions
@@ -61,10 +61,10 @@ contract C {
// compileViaYul: also
// ----
// test_bytes() ->
// gas irOptimized: 371919
// gas irOptimized: 371912
// gas legacy: 416585
// gas legacyOptimized: 322043
// test_uint256() ->
// gas irOptimized: 523001
// gas irOptimized: 523016
// gas legacy: 583100
// gas legacyOptimized: 444161
@@ -53,6 +53,6 @@ contract C {
// f2() -> 0x20, 0xa0, 0x1, 0x60, 0x2, 0x3, "abc"
// f3() -> 0x20, 0xa0, 0x1, 0x60, 0x2, 0x3, "abc"
// f4() -> 0x20, 0x160, 0x1, 0x80, 0xc0, 0x2, 0x3, "abc", 0x7, 0x40, 0x2, 0x2, 0x3
// gas irOptimized: 113299
// gas irOptimized: 113277
// gas legacy: 114900
// gas legacyOptimized: 112606
@@ -32,6 +32,6 @@ contract C is B {
// compileViaYul: also
// ----
// test() -> 77
// gas irOptimized: 119919
// gas irOptimized: 119911
// gas legacy: 155093
// gas legacyOptimized: 111550
@@ -21,6 +21,6 @@ contract C {
// f(uint256[][1]): 32, 32, 0 -> true
// f(uint256[][1]): 32, 32, 1, 42 -> true
// f(uint256[][1]): 32, 32, 8, 421, 422, 423, 424, 425, 426, 427, 428 -> true
// gas irOptimized: 171842
// gas irOptimized: 171829
// gas legacy: 140672
// gas legacyOptimized: 119588
@@ -19,10 +19,10 @@ contract C {
// compileViaYul: also
// ----
// h(uint256[2][]): 0x20, 3, 123, 124, 223, 224, 323, 324 -> 32, 256, 0x20, 3, 123, 124, 223, 224, 323, 324
// gas irOptimized: 180931
// gas irOptimized: 180924
// gas legacy: 184929
// gas legacyOptimized: 181504
// i(uint256[2][2]): 123, 124, 223, 224 -> 32, 128, 123, 124, 223, 224
// gas irOptimized: 112539
// gas irOptimized: 112520
// gas legacy: 115468
// gas legacyOptimized: 112988