aboutsummaryrefslogtreecommitdiff
path: root/tools/test-js-optimizer-t2-output.js
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2011-12-29 17:24:31 -0800
committerAlon Zakai <alonzakai@gmail.com>2011-12-29 17:24:31 -0800
commite53ee130a3fd19746f312ee30bd26a549ca09223 (patch)
treefa7ff79fe3ba8cde65d3a5297bf7bc29b40aa945 /tools/test-js-optimizer-t2-output.js
parent4f876565ff4ead7f0527bbcc6b9dce71654d3ed1 (diff)
let shiftOptimizer either replace the original variable, or keep it and add a new shifted variable
Diffstat (limited to 'tools/test-js-optimizer-t2-output.js')
-rw-r--r--tools/test-js-optimizer-t2-output.js62
1 files changed, 33 insertions, 29 deletions
diff --git a/tools/test-js-optimizer-t2-output.js b/tools/test-js-optimizer-t2-output.js
index 04f1d0f4..ea384e07 100644
--- a/tools/test-js-optimizer-t2-output.js
+++ b/tools/test-js-optimizer-t2-output.js
@@ -1,38 +1,42 @@
function shifty($id) {
- $id >>= 2;
- q(HEAP32[$id]);
- q(HEAP32[$id + 10]);
- q(HEAP32[$id + 20]);
- q(HEAP32[(unknown1 + unknown2 >> 2) + $id]);
- q(HEAP32[(unknown1 + unknown2 >> 2) + $id]);
+ var $id$s2 = $id >> 2;
+ q(HEAP32[$id$s2]);
+ q(HEAP32[$id$s2 + 10]);
+ q(HEAP32[$id$s2 + 20]);
+ q(HEAP32[(unknown1 + unknown2 >> 2) + $id$s2]);
+ q(HEAP32[(unknown1 + unknown2 >> 2) + $id$s2]);
var localUnchanged1 = get(1), localUnchanged2 = get(1);
- q(HEAP32[(localUnchanged1 + localUnchanged2 >> 2) + $id]);
- q($id << 2 >> _something_);
- q($id << 2 << _somethingElse_);
+ q(HEAP32[(localUnchanged1 + localUnchanged2 >> 2) + $id$s2]);
+ q($id >> _something_);
+ $id = q("..");
+ $id$s2 = $id >> 2;
+ q($id << _somethingElse_);
pause(-1);
var $id2;
$id2 = get(54) >> 1;
q(HEAP32[$id2]);
q(HEAP32[$id2 + 20]);
q(HEAP32[$id2 + 40]);
- var $id3 = get(74) >> 3;
- q(HEAP32[$id3]);
- q(HEAP32[$id3 + 5]);
- q(HEAP32[$id3 + 10]);
+ var $id3 = get(74), $id3$s3 = $id3 >> 3;
+ q(HEAP32[$id3$s3]);
+ q(HEAP32[$id3$s3 + 5]);
+ q(HEAP32[$id3$s3 + 10]);
+ q($id3);
pause(0);
var _idents = get("abc") >> 2;
q(HEAP32[(HEAP32[_idents] >> 2) + 2]);
q(HEAP32[(HEAP32[_idents] >> 2) + 2]);
q(HEAP32[(HEAP32[_idents] >> 2) + 2]);
pause(1);
- var $sn_addr = get(12), $a_addr = get(999) >> 2;
+ var $sn_addr = get(12), $a_addr = get(999), $a_addr$s2 = $a_addr >> 2;
var $i = get(112233);
- q(HEAP32[($sn_addr - 1 << 1) + $a_addr + 1]);
- q(HEAP32[($i - 1 << 1) + $a_addr + 1]);
- $a_addr = $a_addr + 1;
- q(HEAP32[($i << 1) + $a_addr]);
- q(HEAP32[$a_addr + $i]);
- q($a_addr, z($a_addr));
+ q(HEAP32[($sn_addr - 1 << 1) + $a_addr$s2 + 1]);
+ q(HEAP32[($i - 1 << 1) + $a_addr$s2 + 1]);
+ $a_addr = $a_addr + 4;
+ $a_addr$s2 = $a_addr >> 2;
+ q(HEAP32[($i << 1) + $a_addr$s2]);
+ q(HEAP32[$a_addr$s2 + $i]);
+ q($a_addr$s2, z($a_addr$s2));
pause(2);
var $level = HEAP[get(322) >> 2];
var _dwt_norms_real = get("a") >> 2, $orient = get("cheez");
@@ -41,7 +45,7 @@ function shifty($id) {
q(HEAP32[($level << 1) + _dwt_norms_real + $orient * 20 + 2]);
pause(3);
var $wavelet38 = get(38) >> 2;
- $k = $a_addr << 2;
+ $k = $a_addr;
q(HEAPF32[(HEAP32[$wavelet38] >> 2) + ($k << 2) + 2]);
q(HEAPF32[(HEAP32[$wavelet38] >> 2) + ($k << 2) + 3]);
q(HEAPF32[(HEAP32[$wavelet38] >> 2) + ($k << 2) + 100]);
@@ -59,15 +63,15 @@ function shifty($id) {
q(1 << $idx << 1);
print(INDENT + "Entering: _main" + "hi");
pause(7);
- var $tp = get("tp") >> 2;
- q($tp);
- q($tp);
- q($tp);
- HEAP32[$H400] = $tp << 2;
- HEAP32[$tp << 2] = 5;
+ var $tp = get("tp"), $tp$s2 = $tp >> 2;
+ q($tp$s2);
+ q($tp$s2);
+ q($tp$s2);
+ HEAP32[$H400] = $tp;
HEAP32[$tp] = 5;
- HEAP32[HEAP[$tp]] = 5;
- HEAP32[HEAP[$tp] >> 2] = 5;
+ HEAP32[$tp$s2] = 5;
+ HEAP32[HEAP[$tp$s2]] = 5;
+ HEAP32[HEAP[$tp$s2] >> 2] = 5;
pause(7);
q(go());
q(go() >> 8 << 8);