diff --git a/implementation-contributed/javascriptcore/stress/regress-187006.js b/implementation-contributed/javascriptcore/stress/regress-187006.js
deleted file mode 100644
index e55b2ab4b475c87c8f4a926142aa2d0c43b4fe6c..0000000000000000000000000000000000000000
--- a/implementation-contributed/javascriptcore/stress/regress-187006.js
+++ /dev/null
@@ -1,17 +0,0 @@
-// Reviewed
-Object.defineProperty(Array.prototype, '0', {
-    get() { },
-    set() { throw new Error(); }
-});
-
-var __v_7772 = "GGCCGGGTAAAGTGGCTCACGCCTGTAATCCCAGCACTTTACCCCCCGAGGCGGGCGGA";
-var exception;
-
-try {
-    __v_7772.match(/[cgt]gggtaaa|tttaccc[acg]/ig);
-} catch (e) {
-    exception = e;
-}
-
-if (exception != "Error")
-    throw "FAILED";
diff --git a/implementation-contributed/javascriptcore/stress/regress-187373-2.js b/implementation-contributed/javascriptcore/stress/regress-187373-2.js
new file mode 100644
index 0000000000000000000000000000000000000000..9229f6f87d2661a0994559eb7117110ef1e43f4f
--- /dev/null
+++ b/implementation-contributed/javascriptcore/stress/regress-187373-2.js
@@ -0,0 +1,8 @@
+//@ runDefault("--useControlFlowProfiler=true")
+
+function foo() {
+    for (var x in []) {
+        o[++x];
+    }
+}
+foo()
diff --git a/implementation-contributed/javascriptcore/stress/regress-191730.js b/implementation-contributed/javascriptcore/stress/regress-191730.js
new file mode 100644
index 0000000000000000000000000000000000000000..b6ab1c9f524e0059965de9541fd0ecca28ad5a48
--- /dev/null
+++ b/implementation-contributed/javascriptcore/stress/regress-191730.js
@@ -0,0 +1,25 @@
+function assertEq(actual, expected) {
+    if (actual != expected)
+        throw ("Expected: " + expected + ", actual: " + actual);
+}
+
+var otherGlobal = $vm.createGlobalObject();
+
+Array.prototype.__defineSetter__(7, () => {
+    arr[0] = { };
+});
+
+let arr = new otherGlobal.Array(1.1, 2.2, 3.3);
+
+function foo(arr, regexp, str){
+    var result = regexp[Symbol.match](str);
+    arr[1] = 3.54484805889626e-310;
+    return arr[0];
+}
+
+let regexp = /a/g;
+for (let i = 0; i < 10000; i++)
+    foo(arr, regexp, "aaaa");
+
+let r = foo(arr, regexp, "aaaaaaaa");
+assertEq(arr[1], "3.54484805889626e-310");
diff --git a/implementation-contributed/javascriptcore/stress/regress-191731.js b/implementation-contributed/javascriptcore/stress/regress-191731.js
new file mode 100644
index 0000000000000000000000000000000000000000..a93e66fe09801969e8c7155b1b63c5fe4a7dab06
--- /dev/null
+++ b/implementation-contributed/javascriptcore/stress/regress-191731.js
@@ -0,0 +1,27 @@
+function assertEq(actual, expected) {
+    if (actual != expected)
+        throw ("Expected: " + expected + ", actual: " + actual);
+}
+
+function foo(arr, regexp, str) {
+    regexp[Symbol.match](str);
+    arr[1] = 3.54484805889626e-310;
+    return arr[0];
+}
+
+let arr = [1.1, 2.2, 3.3];
+let regexp = /a/y;
+
+for (let i = 0; i < 10000; i++)
+    foo(arr, regexp, "abcd");
+
+regexp.lastIndex = {
+    valueOf: () => {
+        arr[0] = arr;
+        return 0;
+    }
+};
+let result = foo(arr, regexp, "abcd");
+
+assertEq(arr[1], "3.54484805889626e-310");
+assertEq(result, ",3.54484805889626e-310,3.3");