summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/ion/bug1282944.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/ion/bug1282944.js')
-rw-r--r--js/src/jit-test/tests/ion/bug1282944.js16
1 files changed, 16 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/ion/bug1282944.js b/js/src/jit-test/tests/ion/bug1282944.js
new file mode 100644
index 000000000..386ad7452
--- /dev/null
+++ b/js/src/jit-test/tests/ion/bug1282944.js
@@ -0,0 +1,16 @@
+// |jit-test| --ion-eager
+
+if (helperThreadCount() === 0)
+ quit(0);
+
+// (1) Poison an element in the ionLazyLinkList with a builder whose
+// script is in a different compartment.
+evaluate('offThreadCompileScript("var x = -1"); runOffThreadScript()',
+ { global: newGlobal() });
+
+// (2) Spam the ionLazyLinkList with pending builders until it pops off the one
+// for the other compartment's script.
+for (var i = 0; i < 1000; ++i) {
+ offThreadCompileScript('var x = ' + i);
+ runOffThreadScript();
+}