aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2013-07-17 11:03:46 -0700
committerAlon Zakai <alonzakai@gmail.com>2013-07-17 11:03:46 -0700
commit3ff94f33525eb46c210f58c3e5632c5b0cfd86a4 (patch)
tree77f780f55a56735c9a72747ae24e0373ce9c4747
parent0f5e4bcdbfe5eb96b732ee8a050bede1b7b2d8f1 (diff)
test for outlining of some of the functions
-rw-r--r--tools/test-js-optimizer-asm-outline1-output.js39
-rw-r--r--tools/test-js-optimizer-asm-outline1.js14
2 files changed, 53 insertions, 0 deletions
diff --git a/tools/test-js-optimizer-asm-outline1-output.js b/tools/test-js-optimizer-asm-outline1-output.js
index 6b794eec..7321c539 100644
--- a/tools/test-js-optimizer-asm-outline1-output.js
+++ b/tools/test-js-optimizer-asm-outline1-output.js
@@ -121,6 +121,21 @@ function vars2(x, y) {
a = HEAP32[sp + 16 >> 2];
b = HEAPF32[sp + 24 >> 2];
}
+function vars3(x, y) {
+ x = x | 0;
+ y = +y;
+ var a = 0;
+ HEAP32[sp + 16 >> 2] = a;
+ HEAP32[sp + 0 >> 2] = x;
+ HEAPF32[sp + 8 >> 2] = y;
+ vars3$1(sp);
+ a = HEAP32[sp + 16 >> 2];
+ HEAP32[sp + 16 >> 2] = a;
+ HEAPF32[sp + 8 >> 2] = y;
+ HEAP32[sp + 0 >> 2] = x;
+ vars3$0(sp);
+ a = HEAP32[sp + 16 >> 2];
+}
function lin$0(sp) {
sp = sp | 0;
c(13);
@@ -302,4 +317,28 @@ function vars2$0(sp) {
HEAP32[sp + 16 >> 2] = a;
HEAPF32[sp + 24 >> 2] = b;
}
+function vars3$0(sp) {
+ sp = sp | 0;
+ var a = 0, y = +0, x = 0;
+ x = HEAP32[sp + 0 >> 2];
+ y = HEAPF32[sp + 8 >> 2];
+ a = HEAP32[sp + 16 >> 2];
+ a = c(4 + y * x);
+ a = c(5 + a);
+ a = c(6 + y * x);
+ a = c(7 + a);
+ HEAP32[sp + 16 >> 2] = a;
+}
+function vars3$1(sp) {
+ sp = sp | 0;
+ var a = 0, x = 0, y = +0;
+ y = HEAPF32[sp + 8 >> 2];
+ x = HEAP32[sp + 0 >> 2];
+ a = HEAP32[sp + 16 >> 2];
+ a = x + y;
+ a = c(1 + a);
+ a = c(2 + y * x);
+ a = c(3 + a);
+ HEAP32[sp + 16 >> 2] = a;
+}
diff --git a/tools/test-js-optimizer-asm-outline1.js b/tools/test-js-optimizer-asm-outline1.js
index 96c86b77..34250a02 100644
--- a/tools/test-js-optimizer-asm-outline1.js
+++ b/tools/test-js-optimizer-asm-outline1.js
@@ -185,5 +185,19 @@ function vars2(x, y) {
a = c(5+a);
b = c(6+b);
}
+function vars3(x, y) {
+ x = x | 0;
+ y = +y;
+ var a = 0, b = +0;
+ a = x+y;
+ b = y*x;
+ a = c(1+a);
+ a = c(2+b);
+ a = c(3+a);
+ a = c(4+b);
+ a = c(5+a);
+ a = c(6+b);
+ a = c(7+a);
+}
// EMSCRIPTEN_GENERATED_FUNCTIONS
// EXTRA_INFO: { "sizeToOutline": 30 }