diff options
author | Alon Zakai <azakai@google.com> | 2019-03-06 14:12:26 -0800 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2019-03-06 16:34:34 -0800 |
commit | 83aa0dc2daf327ed264cc22e51af1a866787a764 (patch) | |
tree | 70660819a1cd694c9776b0eb93db7c162eab274f /test/wasm2js/i64.2asm.js | |
parent | 22fe3269f79c38c7954967ec303642b5168844c3 (diff) | |
download | binaryen-83aa0dc2daf327ed264cc22e51af1a866787a764.tar.gz binaryen-83aa0dc2daf327ed264cc22e51af1a866787a764.tar.bz2 binaryen-83aa0dc2daf327ed264cc22e51af1a866787a764.zip |
Optimize added constants with propagation only if we see we will remove all uses of the original add, as otherwise we may just be adding work (both an offset, and an add). Refactor local-utils.h, and make UnneededSetRemover also check for side effects, so it cleanly removes all traces of unneeded sets.
Diffstat (limited to 'test/wasm2js/i64.2asm.js')
-rw-r--r-- | test/wasm2js/i64.2asm.js | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/test/wasm2js/i64.2asm.js b/test/wasm2js/i64.2asm.js index c61739d17..65332ff36 100644 --- a/test/wasm2js/i64.2asm.js +++ b/test/wasm2js/i64.2asm.js @@ -26,13 +26,10 @@ function asmFunc(global, env, buffer) { x$hi = x$hi | 0; y = y | 0; y$hi = y$hi | 0; - var i64toi32_i32$0 = 0, i64toi32_i32$5 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0; - i64toi32_i32$0 = x$hi; - i64toi32_i32$0 = y$hi; - i64toi32_i32$0 = x$hi; + var i64toi32_i32$5 = 0, i64toi32_i32$3 = 0, i64toi32_i32$4 = 0; i64toi32_i32$3 = y; i64toi32_i32$4 = x + i64toi32_i32$3 | 0; - i64toi32_i32$5 = i64toi32_i32$0 + y$hi | 0; + i64toi32_i32$5 = x$hi + y$hi | 0; if (i64toi32_i32$4 >>> 0 < i64toi32_i32$3 >>> 0) i64toi32_i32$5 = i64toi32_i32$5 + 1 | 0; i64toi32_i32$5 = i64toi32_i32$5; i64toi32_i32$HIGH_BITS = i64toi32_i32$5; @@ -44,7 +41,7 @@ function asmFunc(global, env, buffer) { x$hi = x$hi | 0; y = y | 0; y$hi = y$hi | 0; - var i64toi32_i32$0 = 0, i64toi32_i32$5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$3 = 0; + var i64toi32_i32$5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$3 = 0; i64toi32_i32$0 = x$hi; i64toi32_i32$0 = y$hi; i64toi32_i32$0 = x$hi; @@ -153,7 +150,7 @@ function asmFunc(global, env, buffer) { x$hi = x$hi | 0; y = y | 0; y$hi = y$hi | 0; - var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0; + var i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0; i64toi32_i32$0 = x$hi; i64toi32_i32$0 = y$hi; i64toi32_i32$0 = x$hi; @@ -171,7 +168,7 @@ function asmFunc(global, env, buffer) { x$hi = x$hi | 0; y = y | 0; y$hi = y$hi | 0; - var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0; + var i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0; i64toi32_i32$0 = x$hi; i64toi32_i32$0 = y$hi; i64toi32_i32$0 = x$hi; @@ -189,7 +186,7 @@ function asmFunc(global, env, buffer) { x$hi = x$hi | 0; y = y | 0; y$hi = y$hi | 0; - var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0; + var i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0; i64toi32_i32$0 = x$hi; i64toi32_i32$0 = y$hi; i64toi32_i32$0 = x$hi; @@ -207,7 +204,7 @@ function asmFunc(global, env, buffer) { x$hi = x$hi | 0; y = y | 0; y$hi = y$hi | 0; - var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0, $9_1 = 0; + var i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$3 = 0, $9_1 = 0; i64toi32_i32$0 = x$hi; i64toi32_i32$0 = y$hi; i64toi32_i32$0 = x$hi; @@ -1298,7 +1295,7 @@ function asmFunc(global, env, buffer) { function __wasm_ctz_i64(var$0, var$0$hi) { var$0 = var$0 | 0; var$0$hi = var$0$hi | 0; - var i64toi32_i32$0 = 0, i64toi32_i32$5 = 0, i64toi32_i32$3 = 0, i64toi32_i32$4 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $10_1 = 0, $5$hi = 0, $8$hi = 0; + var i64toi32_i32$0 = 0, i64toi32_i32$3 = 0, i64toi32_i32$4 = 0, i64toi32_i32$5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $10_1 = 0, $5$hi = 0, $8$hi = 0; i64toi32_i32$0 = var$0$hi; i64toi32_i32$0 = i64toi32_i32$0; if (((var$0 | i64toi32_i32$0 | 0 | 0) == (0 | 0) | 0) == (0 | 0)) { @@ -1420,7 +1417,7 @@ function asmFunc(global, env, buffer) { var$0$hi = var$0$hi | 0; var$1 = var$1 | 0; var$1$hi = var$1$hi | 0; - var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, wasm2js_i32$0 = 0; + var i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, wasm2js_i32$0 = 0; i64toi32_i32$0 = var$0$hi; i64toi32_i32$0 = var$1$hi; i64toi32_i32$0 = var$0$hi; |