diff options
author | Alon Zakai <azakai@google.com> | 2019-05-03 11:26:41 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-05-03 11:26:41 -0700 |
commit | 909ac3410093c0b35b3181abcd44b9fb9ceb4781 (patch) | |
tree | 99b75f23843e1a435231e76f8e39835999ca9ee9 /test/wasm2js/labels.2asm.js | |
parent | 80b509cfb8fa35d229643f35e423e6d049ab8849 (diff) | |
download | binaryen-909ac3410093c0b35b3181abcd44b9fb9ceb4781.tar.gz binaryen-909ac3410093c0b35b3181abcd44b9fb9ceb4781.tar.bz2 binaryen-909ac3410093c0b35b3181abcd44b9fb9ceb4781.zip |
wasm2js: avoid some slow operations when not optimizing (#2082)
Without this PR, wasm2js0.test_printf in emscripten took an extremely long time to compile.
Diffstat (limited to 'test/wasm2js/labels.2asm.js')
-rw-r--r-- | test/wasm2js/labels.2asm.js | 152 |
1 files changed, 83 insertions, 69 deletions
diff --git a/test/wasm2js/labels.2asm.js b/test/wasm2js/labels.2asm.js index 6add316dc..c4a93491c 100644 --- a/test/wasm2js/labels.2asm.js +++ b/test/wasm2js/labels.2asm.js @@ -69,12 +69,15 @@ function asmFunc(global, env, buffer) { function $3() { var i = 0, $6_1 = 0; i = 0; - i = i + 1 | 0; exit : { - if ((i | 0) == (5 | 0)) { - $6_1 = i; - break exit; - } + cont : while (1) { + i = i + 1 | 0; + if ((i | 0) == (5 | 0)) { + $6_1 = i; + break exit; + } + break cont; + }; $6_1 = i; } return $6_1 | 0; @@ -98,58 +101,67 @@ function asmFunc(global, env, buffer) { } function $5() { - return 1 + 1 | 0 | 0; + var $0_1 = 0; + l : while (1) { + $0_1 = 1; + break l; + }; + return $0_1 + 1 | 0 | 0; } function $6() { var i = 0; i = 0; - l : { - break l; - } - i = i + 1 | 0; - l1 : { - break l1; - } - i = i + 1 | 0; - l2 : { - break l2; - } - i = i + 1 | 0; - l3 : { - break l3; - } - i = i + 1 | 0; - l4 : { - break l4; + block_1 : { + l : { + break l; + } + i = i + 1 | 0; + l1 : { + break l1; + } + i = i + 1 | 0; + l2 : { + break l2; + } + i = i + 1 | 0; + l3 : { + break l3; + } + i = i + 1 | 0; + l4 : { + break l4; + } + i = i + 1 | 0; } - i = i + 1 | 0; return i | 0; } function $7() { var i = 0; i = 0; - if_1 : { - break if_1; - } - i = i + 1 | 0; - if5 : { - break if5; - } - i = i + 1 | 0; - if6 : { - break if6; - } - i = i + 1 | 0; - if7 : { - break if7; - } - i = i + 1 | 0; - if8 : { - break if8; + block_1 : { + if_1 : { + break if_1; + } + i = i + 1 | 0; + if5 : { + break if5; + } + i = i + 1 | 0; + if6 : { + break if6; + } + i = i + 1 | 0; + if7 : { + break if7; + } + i = i + 1 | 0; + if8 : { + break if8; + } + i = i + 1 | 0; } - i = i + 1 | 0; return i | 0; } @@ -210,19 +222,19 @@ function asmFunc(global, env, buffer) { function $10() { var i = 0, $10_1 = 0; i = 0; - inner : { - if (0) { - break inner - } - i = i | 1 | 0; - if (1) { - break inner - } - i = i | 2 | 0; - } - i = i | 4 | 0; - $10_1 = i; outer : { + inner : { + if (0) { + break inner + } + i = i | 1 | 0; + if (1) { + break inner + } + i = i | 2 | 0; + } + i = i | 4 | 0; + $10_1 = i; if (0) { break outer } @@ -240,12 +252,12 @@ function asmFunc(global, env, buffer) { function $11() { var $2_2 = 0, $0_1 = 0; - l1 : { - $0_1 = 1; - break l1; - } - $2_2 = $0_1; l0 : { + l1 : { + $0_1 = 1; + break l1; + } + $2_2 = $0_1; if (1) { break l0 } @@ -269,11 +281,11 @@ function asmFunc(global, env, buffer) { function $13() { var i1 = 0, $7_1 = 0, $3_2 = 0; - i1 = 1; - $3_2 = i1; - i1 = 2; - $7_1 = $3_2; l0 : { + i1 = 1; + $3_2 = i1; + i1 = 2; + $7_1 = $3_2; if (i1) { break l0 } @@ -306,10 +318,12 @@ function asmFunc(global, env, buffer) { function $16() { var $1_2 = 0, $2_2 = 0; - $1_2 = 2; - l113 : { - $2_2 = 3; - break l113; + l1 : { + $1_2 = 2; + l113 : { + $2_2 = 3; + break l113; + } } return $1_2 + $2_2 | 0 | 0; } |