summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/ion/bug1106171-sink.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/ion/bug1106171-sink.js')
-rw-r--r--js/src/jit-test/tests/ion/bug1106171-sink.js19
1 files changed, 19 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/ion/bug1106171-sink.js b/js/src/jit-test/tests/ion/bug1106171-sink.js
new file mode 100644
index 0000000000..26fb1e27d2
--- /dev/null
+++ b/js/src/jit-test/tests/ion/bug1106171-sink.js
@@ -0,0 +1,19 @@
+// |jit-test| --ion-sink=on
+// Sink Algorithm should not move instruction into merge blocks
+// which have no corresponding pc.
+
+setJitCompilerOption("ion.warmup.trigger", 30);
+
+var o = {
+ a : 40,
+ b : true
+};
+
+function f(a, b) {
+ do {
+ if (a == 0)
+ return;
+ a--;
+ } while (true || this ? o.a-- : true);
+}
+f(200000, 0);