summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/gc/bug-1252329.js
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--js/src/jit-test/tests/gc/bug-1252329.js32
1 files changed, 32 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/gc/bug-1252329.js b/js/src/jit-test/tests/gc/bug-1252329.js
new file mode 100644
index 0000000000..8f5b1ce282
--- /dev/null
+++ b/js/src/jit-test/tests/gc/bug-1252329.js
@@ -0,0 +1,32 @@
+// |jit-test| allow-oom; skip-if: helperThreadCount() == 0 || !('oomAfterAllocations' in this)
+
+var lfcode = new Array();
+lfcode.push("5");
+lfcode.push(`
+gczeal(8, 2);
+try {
+ [new String, y]
+} catch (e) {}
+oomAfterAllocations(50);
+try {
+ (5).replace(r, () => {});
+} catch (x) {}
+`);
+while (true) {
+ var file = lfcode.shift(); if (file == undefined) { break; }
+ loadFile(file)
+}
+function loadFile(lfVarx) {
+ if (lfVarx.substr(-3) != ".js" && lfVarx.length != 1) {
+ switch (lfRunTypeId) {
+ case 5:
+ var lfGlobal = newGlobal();
+ for (lfLocal in this) {}
+ lfGlobal.offThreadCompileToStencil(lfVarx);
+ var stencil = lfGlobal.finishOffThreadStencil();
+ lfGlobal.evalStencil(stencil);
+ }
+ } else if (!isNaN(lfVarx)) {
+ lfRunTypeId = parseInt(lfVarx);
+ }
+}