Skip to content

Commit fd5d26f

Browse files
committed
remove-unused-brs after coalesce-locals
1 parent 5af71ee commit fd5d26f

7 files changed

Lines changed: 362 additions & 419 deletions

src/passes/pass.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,10 +116,11 @@ void PassRunner::addDefaultFunctionOptimizationPasses() {
116116
add("simplify-locals");
117117
add("vacuum"); // previous pass creates garbage
118118
add("reorder-locals");
119-
add("remove-unused-brs"); // simplify-locals opens opportunities for phi optimizations
119+
add("remove-unused-brs"); // simplify-locals opens opportunities for optimizations
120120
add("coalesce-locals");
121121
add("vacuum"); // previous pass creates garbage
122122
add("reorder-locals");
123+
add("remove-unused-brs"); // coalesce-locals opens opportunities for optimizations
123124
add("merge-blocks");
124125
add("optimize-instructions");
125126
add("precompute");

test/emcc_O2_hello_world.fromasm

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8573,13 +8573,11 @@
85738573
(i32.const 3)
85748574
)
85758575
)
8576-
(block
8577-
(set_local $1
8578-
(get_local $0)
8579-
)
8580-
(set_local $2
8581-
(i32.const 4)
8582-
)
8576+
(set_local $1
8577+
(get_local $0)
8578+
)
8579+
(set_local $2
8580+
(i32.const 4)
85838581
)
85848582
)
85858583
)

test/emcc_O2_hello_world.fromasm.imprecise

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8571,13 +8571,11 @@
85718571
(i32.const 3)
85728572
)
85738573
)
8574-
(block
8575-
(set_local $1
8576-
(get_local $0)
8577-
)
8578-
(set_local $2
8579-
(i32.const 4)
8580-
)
8574+
(set_local $1
8575+
(get_local $0)
8576+
)
8577+
(set_local $2
8578+
(i32.const 4)
85818579
)
85828580
)
85838581
)

0 commit comments

Comments
 (0)