aboutsummaryrefslogtreecommitdiff
path: root/tools/test-js-optimizer-asm-pre-output.js
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2013-06-08 09:14:22 -0700
committerAlon Zakai <alonzakai@gmail.com>2013-06-08 09:55:41 -0700
commit430cfefc1612c00c481e5343b3be4ddc514fd415 (patch)
treeb5eaa77c1923c00a400d1972a1509a610e541fe7 /tools/test-js-optimizer-asm-pre-output.js
parent0f382355e385e94f933f9962bf8b7703614b7c16 (diff)
optimize away bitcasts to variables that will only be used in an assign to the parallel heap type
Diffstat (limited to 'tools/test-js-optimizer-asm-pre-output.js')
-rw-r--r--tools/test-js-optimizer-asm-pre-output.js12
1 files changed, 12 insertions, 0 deletions
diff --git a/tools/test-js-optimizer-asm-pre-output.js b/tools/test-js-optimizer-asm-pre-output.js
index ae1140b1..3257576e 100644
--- a/tools/test-js-optimizer-asm-pre-output.js
+++ b/tools/test-js-optimizer-asm-pre-output.js
@@ -112,11 +112,23 @@ function tempDoublePtr($45, $14, $28, $42) {
$14 = $14 | 0;
$28 = $28 | 0;
$42 = $42 | 0;
+ var unelim = +0, bad = 0, unelim2 = +0;
+ unelim = +(127.5 * +$14);
HEAPF32[$45 >> 2] = ($14 < $28 ? $14 : $28) - $42;
HEAP32[$world + 102916 >> 2] = _malloc(192) | 0;
f(+HEAPF32[$45 >> 2]);
g(HEAP32[$14 >> 2] | 0);
$42 = +HEAPF32[$42 >> 2];
ch($42);
+ HEAPF32[$45 >> 2] = unelim;
+ moar();
+ bad = (HEAPF32[tempDoublePtr >> 2] = 127.5 * +$14, HEAP32[tempDoublePtr >> 2] | 0);
+ func();
+ HEAP32[4] = bad;
+ HEAP32[5] = bad + 1;
+ moar();
+ unelim2 = 127 + $14 | 0;
+ func();
+ HEAP32[4] = unelim2;
}