diff options
author | Alon Zakai <alonzakai@gmail.com> | 2013-07-08 17:02:03 -0700 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2013-07-08 17:02:03 -0700 |
commit | 208893daffc8aab7a1a8e75fbd10cd5144b569c4 (patch) | |
tree | 3b522602df814c58273d2c3859cf9974a31af880 /tools/test-js-optimizer-asm-pre.js | |
parent | 24471090e1c6b6066b188960507ec1c7d988d705 (diff) | |
parent | 30d6e3ce7d7b28998264b913b793a921d6d78e41 (diff) |
Merge pull request #1355 from sunfishcode/incoming
Incoming
Diffstat (limited to 'tools/test-js-optimizer-asm-pre.js')
-rw-r--r-- | tools/test-js-optimizer-asm-pre.js | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/tools/test-js-optimizer-asm-pre.js b/tools/test-js-optimizer-asm-pre.js index 7ca941fa..b762a60e 100644 --- a/tools/test-js-optimizer-asm-pre.js +++ b/tools/test-js-optimizer-asm-pre.js @@ -64,6 +64,12 @@ function b($this, $__n) { HEAP32[(($this + 4 | 0) & 16777215) >> 2] = $40; } HEAP8[($38 + $40 | 0) & 16777215] = 0; + // Eliminate the |0. + HEAP32[$4] = ((~(HEAP32[$5]|0))|0); + // Rewrite to ~. + HEAP32[$4] = HEAP32[$5]^-1; + // Rewrite to ~ and eliminate the |0. + HEAP32[$4] = ((HEAP32[$5]|0)^-1)|0; return; } function rett() { @@ -131,6 +137,7 @@ function compare_result_simplification() { HEAP32[$4] = (HEAP32[$5] == HEAP32[$6]) & 1; HEAP32[$4] = (HEAP32[$5] === HEAP32[$6]) & 1; HEAP32[$4] = (HEAP32[$5] != HEAP32[$6]) & 1; + HEAP32[$4] = (HEAP32[$5] !== HEAP32[$6]) & 1; // Convert the &1 to |0 here, since we don't get an implicit coersion. var x = (HEAP32[$5] != HEAP32[$6]) & 1; } |