@@ -1526,11 +1526,12 @@ export class Module {
15261526 passes . push ( "remove-unused-brs" ) ;
15271527 passes . push ( "remove-unused-names" ) ;
15281528 passes . push ( "merge-blocks" ) ;
1529- passes . push ( "precompute" ) ;
1529+ passes . push ( "precompute-propagate " ) ;
15301530 }
15311531 if ( optimizeLevel >= 3 ) {
15321532 passes . push ( "flatten" ) ;
15331533 passes . push ( "simplify-locals-notee-nostructure" ) ;
1534+ passes . push ( "merge-locals" ) ;
15341535 passes . push ( "vacuum" ) ;
15351536
15361537 passes . push ( "code-folding" ) ;
@@ -1548,12 +1549,11 @@ export class Module {
15481549 passes . push ( "optimize-instructions" ) ;
15491550 if ( optimizeLevel >= 3 || shrinkLevel >= 1 ) {
15501551 passes . push ( "dce" ) ;
1551- passes . push ( "inlining" ) ;
15521552 }
15531553 passes . push ( "remove-unused-brs" ) ;
15541554 passes . push ( "remove-unused-names" ) ;
1555- passes . push ( "inlining-optimizing" ) ;
15561555 if ( optimizeLevel >= 3 || shrinkLevel >= 2 ) {
1556+ passes . push ( "inlining" ) ;
15571557 passes . push ( "precompute-propagate" ) ;
15581558 } else {
15591559 passes . push ( "precompute" ) ;
@@ -1581,9 +1581,6 @@ export class Module {
15811581 passes . push ( "merge-locals" ) ;
15821582 }
15831583 passes . push ( "vacuum" ) ;
1584- if ( optimizeLevel >= 3 || shrinkLevel >= 1 ) {
1585- passes . push ( "code-folding" ) ;
1586- }
15871584 if ( optimizeLevel >= 2 || shrinkLevel >= 1 ) {
15881585 passes . push ( "simplify-globals-optimizing" ) ;
15891586 }
@@ -1622,6 +1619,9 @@ export class Module {
16221619 passes . push ( "simplify-globals" ) ;
16231620 passes . push ( "vacuum" ) ;
16241621 }
1622+ if ( optimizeLevel >= 3 || shrinkLevel >= 1 ) {
1623+ passes . push ( "code-folding" ) ;
1624+ }
16251625 // precompute works best after global optimizations
16261626 if ( optimizeLevel >= 2 || shrinkLevel >= 1 ) {
16271627 passes . push ( "precompute-propagate" ) ;
@@ -1656,7 +1656,7 @@ export class Module {
16561656 passes . push ( "simplify-locals" ) ;
16571657 passes . push ( "vacuum" ) ;
16581658
1659- passes . push ( "inlining-optimizing " ) ;
1659+ passes . push ( "inlining" ) ;
16601660 passes . push ( "precompute-propagate" ) ;
16611661 passes . push ( "vacuum" ) ;
16621662
0 commit comments