diff options
author | Alon Zakai <alonzakai@gmail.com> | 2012-02-19 18:17:28 -0800 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2012-02-19 18:17:28 -0800 |
commit | 0d6c96a9e5ca386f0f62daf4e95912517fa21893 (patch) | |
tree | 7341d088986fa68480000d88e1799aab443bb14e /tools/test-js-optimizer-output.js | |
parent | 379953396230438ab975ca282c40b75f59017be9 (diff) |
collapse elses after the if block breaks or continues, other minor js optimizer fixes
Diffstat (limited to 'tools/test-js-optimizer-output.js')
-rw-r--r-- | tools/test-js-optimizer-output.js | 73 |
1 files changed, 49 insertions, 24 deletions
diff --git a/tools/test-js-optimizer-output.js b/tools/test-js-optimizer-output.js index 17c06a95..ca76cae1 100644 --- a/tools/test-js-optimizer-output.js +++ b/tools/test-js-optimizer-output.js @@ -68,9 +68,7 @@ function loopy() { something(); } while (0); next(); - { - something(); - } + something(); } function ignoreLoopy() { b$for_cond$4 : while (1) { @@ -141,12 +139,11 @@ function hoisting() { } pause(7); while (1) { - if ($i < $N) { - somethingElse(); - } else { + if ($i >= $N) { __label__ = 3; break; } + somethingElse(); if ($i < $N) { somethingElse(); } @@ -166,15 +163,43 @@ function hoisting() { } __label__ = 39; break; - } else { - __label__ = 38; } + __label__ = 38; } while (0); if (__label__ == 38) { var $79 = $_pr6; } pause(9); var $cmp70 = ($call69 | 0) != 0; + pause(10); + while (check()) { + if ($i < $N) { + callOther(); + break; + } + somethingElse(); + if ($i1 < $N) { + callOther(); + continue; + } + somethingElse(); + if ($i2 >= $N) { + somethingElse(); + break; + } + callOther(); + if ($i3 >= $N) { + somethingElse(); + continue; + } + callOther(); + if ($i4 < $N) { + callOther(); + break; + } + somethingElse(); + continue; + } } function innerShouldAlsoBeHoisted() { function hoisting() { @@ -208,9 +233,7 @@ function sleep() { } function demangle($cmp) { do { - if ($cmp) { - __label__ = 3; - } else { + if (!$cmp) { if (something()) { __label__ = 3; break; @@ -218,6 +241,7 @@ function demangle($cmp) { more(); break; } + __label__ = 3; } while (0); if (__label__ == 3) { final(); @@ -259,25 +283,21 @@ function moreLabels() { } if ($cmp1) { break; - } else { - inc(); } + inc(); } pause(999); $while_body$$while_end$31 : do { if ($cmp3) { var $6 = $5; - { - while (1) { - var $6; - $iter = $6 + 3; - if (FHEAP[$iter + 1] < $pct_addr) { - var $6 = $iter; - } else { - var $_lcssa = $iter; - break $while_body$$while_end$31; - } + while (1) { + var $6; + $iter = $6 + 3; + if (FHEAP[$iter + 1] >= $pct_addr) { + var $_lcssa = $iter; + break $while_body$$while_end$31; } + var $6 = $iter; } } else { var $_lcssa = $5; @@ -286,4 +306,9 @@ function moreLabels() { var $_lcssa; cheez(); } -// EMSCRIPTEN_GENERATED_FUNCTIONS: ["abc", "xyz", "xyz2", "expr", "loopy", "bits", "maths", "hoisting", "demangle", "lua", "moreLabels"] +function notComps() { + if (HEAP32[$incdec_ptr71_i + 8 >> 2] != 0) { + shoo(); + } +} +// EMSCRIPTEN_GENERATED_FUNCTIONS: ["abc", "xyz", "xyz2", "expr", "loopy", "bits", "maths", "hoisting", "demangle", "lua", "moreLabels", "notComps"] |