From 338370e6acb9973646fbb42ee947f42f57b034fe Mon Sep 17 00:00:00 2001
From: test262-automation <test262-automation@bocoup.com>
Date: Sat, 15 Dec 2018 19:18:07 +0000
Subject: [PATCH] [v8-test262-automation] Updated curation log with latest
 revision sha's from export and changed files.     sourceRevisionAtLastExport:
 44b1b245 targetRevisionAtLastExport: ae464533ad

---
 .../curation_logs/v8.json                     |   4 +-
 .../v8/intl/collator/check-co-option.js       |  33 ++
 .../v8/intl/collator/check-kf-option.js       |  36 ++
 .../v8/intl/collator/check-kn-option.js       |  29 ++
 .../v8/intl/date-format/check-ca-option.js    |  51 ++
 .../v8/intl/date-format/check-hc-option.js    |  41 ++
 .../v8/intl/date-format/check-nu-option.js    |  59 +++
 .../v8/intl/number-format/check-nu-option.js  |  59 +++
 .../v8/intl/regress-7481.js                   |  39 ++
 .../v8/intl/segmenter/check-lb-option.js      |  41 ++
 .../v8/mjsunit/array-indexing-receiver.js     |  18 +-
 .../v8/mjsunit/asm/regress-913822.js          |  25 +
 .../v8/mjsunit/code-coverage-block.js         |   2 +-
 .../v8/mjsunit/compiler/dataview-neutered.js  |  38 +-
 .../v8/mjsunit/compiler/regress-913232.js     |  14 +
 .../v8/mjsunit/es6/classes.js                 |  35 +-
 .../es6/typedarray-construct-by-array-like.js |   4 +-
 .../v8/mjsunit/es6/typedarray-neutered.js     |   4 +-
 .../v8/mjsunit/es6/typedarray-reduce.js       |   4 +-
 .../v8/mjsunit/es6/typedarray.js              |   8 +-
 .../v8/mjsunit/es7/array-includes-receiver.js |  18 +-
 .../mjsunit/harmony/regress/regress-912504.js |  11 +
 .../string-matchAll-deleted-matchAll.js       |   9 +
 .../v8/mjsunit/messages.js                    |   8 +-
 .../v8/mjsunit/mjsunit.status                 |  20 +-
 .../v8/mjsunit/regress/regress-7773.js        |  71 +++
 .../mjsunit/regress/regress-crbug-913212.js   |  11 +
 .../mjsunit/regress/regress-crbug-913296.js   |  13 +
 .../v8/mjsunit/regress/wasm/regress-913804.js |  17 +
 .../v8/test262/test262.status                 | 467 +++++++++---------
 30 files changed, 893 insertions(+), 296 deletions(-)
 create mode 100644 implementation-contributed/v8/intl/collator/check-co-option.js
 create mode 100644 implementation-contributed/v8/intl/collator/check-kf-option.js
 create mode 100644 implementation-contributed/v8/intl/collator/check-kn-option.js
 create mode 100644 implementation-contributed/v8/intl/date-format/check-ca-option.js
 create mode 100644 implementation-contributed/v8/intl/date-format/check-hc-option.js
 create mode 100644 implementation-contributed/v8/intl/date-format/check-nu-option.js
 create mode 100644 implementation-contributed/v8/intl/number-format/check-nu-option.js
 create mode 100644 implementation-contributed/v8/intl/regress-7481.js
 create mode 100644 implementation-contributed/v8/intl/segmenter/check-lb-option.js
 create mode 100644 implementation-contributed/v8/mjsunit/asm/regress-913822.js
 create mode 100644 implementation-contributed/v8/mjsunit/compiler/regress-913232.js
 create mode 100644 implementation-contributed/v8/mjsunit/harmony/regress/regress-912504.js
 create mode 100644 implementation-contributed/v8/mjsunit/harmony/string-matchAll-deleted-matchAll.js
 create mode 100644 implementation-contributed/v8/mjsunit/regress/regress-7773.js
 create mode 100644 implementation-contributed/v8/mjsunit/regress/regress-crbug-913212.js
 create mode 100644 implementation-contributed/v8/mjsunit/regress/regress-crbug-913296.js
 create mode 100644 implementation-contributed/v8/mjsunit/regress/wasm/regress-913804.js

diff --git a/implementation-contributed/curation_logs/v8.json b/implementation-contributed/curation_logs/v8.json
index 7191a0c000..1d0c9c5922 100644
--- a/implementation-contributed/curation_logs/v8.json
+++ b/implementation-contributed/curation_logs/v8.json
@@ -1,5 +1,5 @@
 {
-  "sourceRevisionAtLastExport": "44b1b245",
-  "targetRevisionAtLastExport": "ae464533ad",
+  "sourceRevisionAtLastExport": "dde25872",
+  "targetRevisionAtLastExport": "468a67ade5",
   "curatedFiles": {}
 }
\ No newline at end of file
diff --git a/implementation-contributed/v8/intl/collator/check-co-option.js b/implementation-contributed/v8/intl/collator/check-co-option.js
new file mode 100644
index 0000000000..477d00a045
--- /dev/null
+++ b/implementation-contributed/v8/intl/collator/check-co-option.js
@@ -0,0 +1,33 @@
+// Copyright 2018 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+let invalid_co = [
+  "invalid",
+  "search",
+  "standard",
+  "abce",
+];
+
+let valid_locales = [
+  "zh-u-co-zhuyin",
+  "zh-u-co-stroke",
+  "ar-u-co-compat",
+  "en-u-co-emoji",
+  "en-u-co-eor",
+  "zh-Hant-u-co-pinyin",
+  "ko-u-co-searchjl",
+  "ja-u-co-unihan",
+];
+
+invalid_co.forEach(function(co) {
+  let col = new Intl.Collator(["en-u-co-" + co]);
+  assertEquals("en", col.resolvedOptions().locale);
+}
+);
+
+valid_locales.forEach(function(l) {
+  let col = new Intl.Collator([l + "-fo-obar"]);
+  assertEquals(l, col.resolvedOptions().locale);
+}
+);
diff --git a/implementation-contributed/v8/intl/collator/check-kf-option.js b/implementation-contributed/v8/intl/collator/check-kf-option.js
new file mode 100644
index 0000000000..45085c667e
--- /dev/null
+++ b/implementation-contributed/v8/intl/collator/check-kf-option.js
@@ -0,0 +1,36 @@
+// Copyright 2018 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+let invalid_kf = [
+  "invalid",
+  "abce",
+  "none",
+  "true",
+];
+
+let valid_kf= [
+  "false",
+  "upper",
+  "lower",
+];
+
+let locales = [
+  "en",
+  "fr",
+];
+
+invalid_kf.forEach(function(kf) {
+  let col = new Intl.Collator(["en-u-kf-" + kf + "-fo-obar"]);
+  assertEquals("en", col.resolvedOptions().locale);
+}
+);
+
+valid_kf.forEach(function(kf) {
+  locales.forEach(function(base) {
+    let l = base + "-u-kf-" + kf;
+    let col = new Intl.Collator([l + "-fo-obar"]);
+    assertEquals(l, col.resolvedOptions().locale);
+  });
+}
+);
diff --git a/implementation-contributed/v8/intl/collator/check-kn-option.js b/implementation-contributed/v8/intl/collator/check-kn-option.js
new file mode 100644
index 0000000000..0e3a82fe26
--- /dev/null
+++ b/implementation-contributed/v8/intl/collator/check-kn-option.js
@@ -0,0 +1,29 @@
+// Copyright 2018 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+let invalid_kn = [
+  "invalid",
+  "search",
+  "standard",
+  "abce",
+];
+
+let valid_kn = [
+  ["en-u-kn", true, "en-u-kn"],
+  ["en-u-kn-true", true, "en-u-kn"],
+  ["en-u-kn-false",false, "en-u-kn-false"],
+];
+
+invalid_kn.forEach(function(kn) {
+  let col = new Intl.Collator(["en-u-kn-" + kn]);
+  assertEquals("en", col.resolvedOptions().locale);
+}
+);
+
+valid_kn.forEach(function(l) {
+  let col = new Intl.Collator([l[0] + "-fo-obar"]);
+  assertEquals(l[1], col.resolvedOptions().numeric);
+  assertEquals(l[2], col.resolvedOptions().locale);
+}
+);
diff --git a/implementation-contributed/v8/intl/date-format/check-ca-option.js b/implementation-contributed/v8/intl/date-format/check-ca-option.js
new file mode 100644
index 0000000000..d27ae44b48
--- /dev/null
+++ b/implementation-contributed/v8/intl/date-format/check-ca-option.js
@@ -0,0 +1,51 @@
+// Copyright 2018 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+
+let invalid_ca = [
+  "invalid",
+  "abce",
+];
+
+// https://www.unicode.org/repos/cldr/tags/latest/common/bcp47/calendar.xml
+let valid_ca= [
+  "buddhist",
+  "chinese",
+  "coptic",
+  "dangi",
+  "ethioaa",
+  "ethiopic",
+  "gregory",
+  "hebrew",
+  "indian",
+  "islamic",
+  "islamic-umalqura",
+  "islamic-tbla",
+  "islamic-civil",
+  "islamic-rgsa",
+  "iso8601",
+  "japanese",
+  "persian",
+  "roc",
+];
+
+let locales = [
+  "en",
+  "ar",
+];
+
+invalid_ca.forEach(function(ca) {
+  let df = new Intl.DateTimeFormat(["en-u-ca-" + ca + "-fo-obar"]);
+  assertEquals("en", df.resolvedOptions().locale);
+}
+);
+
+valid_ca.forEach(function(ca) {
+  locales.forEach(function(base) {
+    let l = base + "-u-ca-" + ca;
+    let df = new Intl.DateTimeFormat([l + "-fo-obar"]);
+    assertEquals(l, df.resolvedOptions().locale);
+  });
+}
+);
diff --git a/implementation-contributed/v8/intl/date-format/check-hc-option.js b/implementation-contributed/v8/intl/date-format/check-hc-option.js
new file mode 100644
index 0000000000..276bfe6a23
--- /dev/null
+++ b/implementation-contributed/v8/intl/date-format/check-hc-option.js
@@ -0,0 +1,41 @@
+// Copyright 2018 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+
+let invalid_hc = [
+  "invalid",
+  "abce",
+  "h10",
+  "h13",
+  "h22",
+  "h25",
+];
+
+// https://www.unicode.org/repos/cldr/tags/latest/common/bcp47/calendar.xml
+let valid_hc= [
+  "h11",
+  "h12",
+  "h23",
+  "h24",
+];
+
+let locales = [
+  "en",
+  "ar",
+];
+
+invalid_hc.forEach(function(hc) {
+  let df = new Intl.DateTimeFormat(["en-u-hc-" + hc + "-fo-obar"]);
+  assertEquals("en", df.resolvedOptions().locale);
+}
+);
+
+valid_hc.forEach(function(hc) {
+  locales.forEach(function(base) {
+    let l = base + "-u-hc-" + hc;
+    let df = new Intl.DateTimeFormat([l + "-fo-obar"]);
+    assertEquals(l, df.resolvedOptions().locale);
+  });
+}
+);
diff --git a/implementation-contributed/v8/intl/date-format/check-nu-option.js b/implementation-contributed/v8/intl/date-format/check-nu-option.js
new file mode 100644
index 0000000000..7d4b4dc927
--- /dev/null
+++ b/implementation-contributed/v8/intl/date-format/check-nu-option.js
@@ -0,0 +1,59 @@
+// Copyright 2018 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+
+let invalid_nu = [
+  "invalid",
+  "abce",
+  "finance",
+  "native",
+  "traditio",
+];
+
+// https://tc39.github.io/ecma402/#table-numbering-system-digits
+let valid_nu= [
+  "arab",
+  "arabext",
+  "bali",
+  "beng",
+  "deva",
+  "fullwide",
+  "gujr",
+  "guru",
+  "hanidec",
+  "khmr",
+  "knda",
+  "laoo",
+  "latn",
+  "limb",
+  "mlym",
+  "mong",
+  "mymr",
+  "orya",
+  "tamldec",
+  "telu",
+  "thai",
+  "tibt",
+];
+
+let locales = [
+  "en",
+  "ar",
+];
+
+
+invalid_nu.forEach(function(nu) {
+  let df = new Intl.DateTimeFormat(["en-u-nu-" + nu + "-fo-obar"]);
+  assertEquals("en", df.resolvedOptions().locale);
+}
+);
+
+valid_nu.forEach(function(nu) {
+  locales.forEach(function(base) {
+    let l = base + "-u-nu-" + nu;
+    let df = new Intl.DateTimeFormat([l + "-fo-obar"]);
+    assertEquals(l, df.resolvedOptions().locale);
+  });
+}
+);
diff --git a/implementation-contributed/v8/intl/number-format/check-nu-option.js b/implementation-contributed/v8/intl/number-format/check-nu-option.js
new file mode 100644
index 0000000000..39c4cbb8cf
--- /dev/null
+++ b/implementation-contributed/v8/intl/number-format/check-nu-option.js
@@ -0,0 +1,59 @@
+// Copyright 2018 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+
+let invalid_nu = [
+  "invalid",
+  "abce",
+  "finance",
+  "native",
+  "traditio",
+];
+
+// https://tc39.github.io/ecma402/#table-numbering-system-digits
+let valid_nu= [
+  "arab",
+  "arabext",
+  "bali",
+  "beng",
+  "deva",
+  "fullwide",
+  "gujr",
+  "guru",
+  "hanidec",
+  "khmr",
+  "knda",
+  "laoo",
+  "latn",
+  "limb",
+  "mlym",
+  "mong",
+  "mymr",
+  "orya",
+  "tamldec",
+  "telu",
+  "thai",
+  "tibt",
+];
+
+let locales = [
+  "en",
+  "ar",
+];
+
+
+invalid_nu.forEach(function(nu) {
+  let nf = new Intl.NumberFormat(["en-u-nu-" + nu + "-fo-obar"]);
+  assertEquals("en", nf.resolvedOptions().locale);
+}
+);
+
+valid_nu.forEach(function(nu) {
+  locales.forEach(function(base) {
+    let l = base + "-u-nu-" + nu;
+    let nf = new Intl.NumberFormat([l + "-fo-obar"]);
+    assertEquals(l, nf.resolvedOptions().locale);
+  });
+}
+);
diff --git a/implementation-contributed/v8/intl/regress-7481.js b/implementation-contributed/v8/intl/regress-7481.js
new file mode 100644
index 0000000000..c3441e35cb
--- /dev/null
+++ b/implementation-contributed/v8/intl/regress-7481.js
@@ -0,0 +1,39 @@
+// Copyright 2018 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+assertEquals(
+    "en-u-hc-h11-nu-arab",
+    new Intl.DateTimeFormat(["en-u-hc-h11-nu-arab"]).resolvedOptions().locale
+);
+assertEquals(
+    "en-u-hc-h12-nu-arab",
+    new Intl.DateTimeFormat(["en-u-hc-h12-nu-arab"]).resolvedOptions().locale
+);
+assertEquals(
+    "en-u-hc-h23-nu-arab",
+    new Intl.DateTimeFormat(["en-u-hc-h23-nu-arab"]).resolvedOptions().locale
+);
+assertEquals(
+    "en-u-hc-h24-nu-arab",
+    new Intl.DateTimeFormat(["en-u-hc-h24-nu-arab"]).resolvedOptions().locale
+);
+
+// https://tc39.github.io/ecma402/#sec-intl.datetimeformat-internal-slots
+// invalid hc should be removed
+// [[LocaleData]][locale].hc must be « null, "h11", "h12", "h23", "h24" » for all locale values.
+assertEquals(
+    "en-u-nu-arab",
+    new Intl.DateTimeFormat(["en-u-hc-h10-nu-arab"]).resolvedOptions().locale
+);
+assertEquals(
+    "en-u-nu-arab",
+    new Intl.DateTimeFormat(["en-u-hc-h13-nu-arab"]).resolvedOptions().locale
+);
+assertEquals(
+    "en-u-nu-arab",
+    new Intl.DateTimeFormat(["en-u-hc-h22-nu-arab"]).resolvedOptions().locale
+);
+assertEquals(
+    "en-u-nu-arab",
+    new Intl.DateTimeFormat(["en-u-hc-h25-nu-arab"]).resolvedOptions().locale
+);
diff --git a/implementation-contributed/v8/intl/segmenter/check-lb-option.js b/implementation-contributed/v8/intl/segmenter/check-lb-option.js
new file mode 100644
index 0000000000..b56b76fc95
--- /dev/null
+++ b/implementation-contributed/v8/intl/segmenter/check-lb-option.js
@@ -0,0 +1,41 @@
+// Copyright 2018 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Flags: --harmony-intl-segmenter
+
+let invalid_lb = [
+  "invalid",
+  "abce",
+  "breakall",
+  "keepall",
+  "none",
+  "standard",
+];
+
+let valid_lb= [
+  "strict",
+  "normal",
+  "loose",
+];
+
+let locales = [
+  "en",
+  "ja",
+  "zh",
+];
+
+invalid_lb.forEach(function(lb) {
+  let df = new Intl.Segmenter(["en-u-lb-" + lb + "-fo-obar"]);
+  assertEquals("en", df.resolvedOptions().locale);
+}
+);
+
+valid_lb.forEach(function(lb) {
+  locales.forEach(function(base) {
+    let l = base + "-u-lb-" + lb;
+    let df = new Intl.Segmenter([l + "-fo-obar"]);
+    assertEquals(l, df.resolvedOptions().locale);
+  });
+}
+);
diff --git a/implementation-contributed/v8/mjsunit/array-indexing-receiver.js b/implementation-contributed/v8/mjsunit/array-indexing-receiver.js
index ea8d02b218..4c47a39216 100644
--- a/implementation-contributed/v8/mjsunit/array-indexing-receiver.js
+++ b/implementation-contributed/v8/mjsunit/array-indexing-receiver.js
@@ -356,7 +356,7 @@ var kTests = {
 
     Detached_Int8Array() {
       var array = new Int8Array(10);
-      %ArrayBufferNeuter(array.buffer);
+      %ArrayBufferDetach(array.buffer);
       assertEquals(Array.prototype.indexOf.call(array, 0), -1);
       assertEquals(Array.prototype.indexOf.call(array, 0, 10), -1);
     },
@@ -391,7 +391,7 @@ var kTests = {
 
     Detached_Uint8Array() {
       var array = new Uint8Array(10);
-      %ArrayBufferNeuter(array.buffer);
+      %ArrayBufferDetach(array.buffer);
       assertEquals(Array.prototype.indexOf.call(array, 0), -1);
       assertEquals(Array.prototype.indexOf.call(array, 0, 10), -1);
     },
@@ -421,7 +421,7 @@ var kTests = {
 
     Detached_Uint8ClampedArray() {
       var array = new Uint8ClampedArray(10);
-      %ArrayBufferNeuter(array.buffer);
+      %ArrayBufferDetach(array.buffer);
       assertEquals(Array.prototype.indexOf.call(array, 0), -1);
       assertEquals(Array.prototype.indexOf.call(array, 0, 10), -1);
     },
@@ -453,7 +453,7 @@ var kTests = {
 
     Detached_Int16Array() {
       var array = new Int16Array(10);
-      %ArrayBufferNeuter(array.buffer);
+      %ArrayBufferDetach(array.buffer);
       assertEquals(Array.prototype.indexOf.call(array, 0), -1);
       assertEquals(Array.prototype.indexOf.call(array, 0, 10), -1);
     },
@@ -485,7 +485,7 @@ var kTests = {
 
     Detached_Uint16Array() {
       var array = new Uint16Array(10);
-      %ArrayBufferNeuter(array.buffer);
+      %ArrayBufferDetach(array.buffer);
       assertEquals(Array.prototype.indexOf.call(array, 0), -1);
       assertEquals(Array.prototype.indexOf.call(array, 0, 10), -1);
     },
@@ -517,7 +517,7 @@ var kTests = {
 
     Detached_Int32Array() {
       var array = new Int32Array(10);
-      %ArrayBufferNeuter(array.buffer);
+      %ArrayBufferDetach(array.buffer);
       assertEquals(Array.prototype.indexOf.call(array, 0), -1);
       assertEquals(Array.prototype.indexOf.call(array, 0, 10), -1);
     },
@@ -550,7 +550,7 @@ var kTests = {
 
     Detached_Uint32Array() {
       var array = new Uint32Array(10);
-      %ArrayBufferNeuter(array.buffer);
+      %ArrayBufferDetach(array.buffer);
       assertEquals(Array.prototype.indexOf.call(array, 0), -1);
       assertEquals(Array.prototype.indexOf.call(array, 0, 10), -1);
     },
@@ -583,7 +583,7 @@ var kTests = {
 
     Detached_Float32Array() {
       var array = new Float32Array(10);
-      %ArrayBufferNeuter(array.buffer);
+      %ArrayBufferDetach(array.buffer);
       assertEquals(Array.prototype.indexOf.call(array, 0), -1);
       assertEquals(Array.prototype.indexOf.call(array, 0, 10), -1);
     },
@@ -616,7 +616,7 @@ var kTests = {
 
     Detached_Float64Array() {
       var array = new Float32Array(10);
-      %ArrayBufferNeuter(array.buffer);
+      %ArrayBufferDetach(array.buffer);
       assertEquals(Array.prototype.indexOf.call(array, 0), -1);
       assertEquals(Array.prototype.indexOf.call(array, 0, 10), -1);
     },
diff --git a/implementation-contributed/v8/mjsunit/asm/regress-913822.js b/implementation-contributed/v8/mjsunit/asm/regress-913822.js
new file mode 100644
index 0000000000..d6ee74637a
--- /dev/null
+++ b/implementation-contributed/v8/mjsunit/asm/regress-913822.js
@@ -0,0 +1,25 @@
+// Copyright 2018 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Flags: --allow-natives-syntax
+
+(function TestNewlineInCPPComment() {
+  function Module() {
+    "use asm" // Crash by comment!
+    function f() {}
+    return f
+  }
+  Module();
+  assertTrue(%IsAsmWasmCode(Module));
+})();
+
+(function TestNewlineInCComment() {
+  function Module() {
+    "use asm" /* Crash by
+    comment! */ function f() {}
+    return f
+  }
+  Module();
+  assertTrue(%IsAsmWasmCode(Module));
+})();
diff --git a/implementation-contributed/v8/mjsunit/code-coverage-block.js b/implementation-contributed/v8/mjsunit/code-coverage-block.js
index bdba90cd1e..c3d775aa27 100644
--- a/implementation-contributed/v8/mjsunit/code-coverage-block.js
+++ b/implementation-contributed/v8/mjsunit/code-coverage-block.js
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-// Flags: --allow-natives-syntax --no-always-opt
+// Flags: --allow-natives-syntax --no-always-opt --no-stress-flush-bytecode
 // Files: test/mjsunit/code-coverage-utils.js
 
 %DebugToggleBlockCoverage(true);
diff --git a/implementation-contributed/v8/mjsunit/compiler/dataview-neutered.js b/implementation-contributed/v8/mjsunit/compiler/dataview-neutered.js
index 54b35f73c8..ef485c69db 100644
--- a/implementation-contributed/v8/mjsunit/compiler/dataview-neutered.js
+++ b/implementation-contributed/v8/mjsunit/compiler/dataview-neutered.js
@@ -2,10 +2,10 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-// Flags: --allow-natives-syntax --opt --noalways-opt
+// Flags: --allow-natives-syntax --opt --noalways-opt --no-stress-flush-bytecode
 
-// Invalidate the neutering protector.
-%ArrayBufferNeuter(new ArrayBuffer(1));
+// Invalidate the detaching protector.
+%ArrayBufferDetach(new ArrayBuffer(1));
 
 // Check DataView.prototype.getInt8() optimization.
 (function() {
@@ -21,7 +21,7 @@
   %OptimizeFunctionOnNextCall(foo);
   assertEquals(0, foo(dv));
   assertOptimized(foo);
-  %ArrayBufferNeuter(ab);
+  %ArrayBufferDetach(ab);
   assertThrows(() => foo(dv), TypeError);
   assertUnoptimized(foo);
   %OptimizeFunctionOnNextCall(foo);
@@ -43,7 +43,7 @@
   %OptimizeFunctionOnNextCall(foo);
   assertEquals(0, foo(dv));
   assertOptimized(foo);
-  %ArrayBufferNeuter(ab);
+  %ArrayBufferDetach(ab);
   assertThrows(() => foo(dv), TypeError);
   assertUnoptimized(foo);
   %OptimizeFunctionOnNextCall(foo);
@@ -65,7 +65,7 @@
   %OptimizeFunctionOnNextCall(foo);
   assertEquals(0, foo(dv));
   assertOptimized(foo);
-  %ArrayBufferNeuter(ab);
+  %ArrayBufferDetach(ab);
   assertThrows(() => foo(dv), TypeError);
   assertUnoptimized(foo);
   %OptimizeFunctionOnNextCall(foo);
@@ -87,7 +87,7 @@
   %OptimizeFunctionOnNextCall(foo);
   assertEquals(0, foo(dv));
   assertOptimized(foo);
-  %ArrayBufferNeuter(ab);
+  %ArrayBufferDetach(ab);
   assertThrows(() => foo(dv), TypeError);
   assertUnoptimized(foo);
   %OptimizeFunctionOnNextCall(foo);
@@ -109,7 +109,7 @@
   %OptimizeFunctionOnNextCall(foo);
   assertEquals(0, foo(dv));
   assertOptimized(foo);
-  %ArrayBufferNeuter(ab);
+  %ArrayBufferDetach(ab);
   assertThrows(() => foo(dv), TypeError);
   assertUnoptimized(foo);
   %OptimizeFunctionOnNextCall(foo);
@@ -131,7 +131,7 @@
   %OptimizeFunctionOnNextCall(foo);
   assertEquals(0, foo(dv));
   assertOptimized(foo);
-  %ArrayBufferNeuter(ab);
+  %ArrayBufferDetach(ab);
   assertThrows(() => foo(dv), TypeError);
   assertUnoptimized(foo);
   %OptimizeFunctionOnNextCall(foo);
@@ -153,7 +153,7 @@
   %OptimizeFunctionOnNextCall(foo);
   assertEquals(0, foo(dv));
   assertOptimized(foo);
-  %ArrayBufferNeuter(ab);
+  %ArrayBufferDetach(ab);
   assertThrows(() => foo(dv), TypeError);
   assertUnoptimized(foo);
   %OptimizeFunctionOnNextCall(foo);
@@ -175,7 +175,7 @@
   %OptimizeFunctionOnNextCall(foo);
   assertEquals(0, foo(dv));
   assertOptimized(foo);
-  %ArrayBufferNeuter(ab);
+  %ArrayBufferDetach(ab);
   assertThrows(() => foo(dv), TypeError);
   assertUnoptimized(foo);
   %OptimizeFunctionOnNextCall(foo);
@@ -199,7 +199,7 @@
   %OptimizeFunctionOnNextCall(foo);
   assertEquals(undefined, foo(dv, 3));
   assertOptimized(foo);
-  %ArrayBufferNeuter(ab);
+  %ArrayBufferDetach(ab);
   assertThrows(() => foo(dv, 4), TypeError);
   assertUnoptimized(foo);
   %OptimizeFunctionOnNextCall(foo);
@@ -223,7 +223,7 @@
   %OptimizeFunctionOnNextCall(foo);
   assertEquals(undefined, foo(dv, 3));
   assertOptimized(foo);
-  %ArrayBufferNeuter(ab);
+  %ArrayBufferDetach(ab);
   assertThrows(() => foo(dv, 4), TypeError);
   assertUnoptimized(foo);
   %OptimizeFunctionOnNextCall(foo);
@@ -247,7 +247,7 @@
   %OptimizeFunctionOnNextCall(foo);
   assertEquals(undefined, foo(dv, 3));
   assertOptimized(foo);
-  %ArrayBufferNeuter(ab);
+  %ArrayBufferDetach(ab);
   assertThrows(() => foo(dv, 4), TypeError);
   assertUnoptimized(foo);
   %OptimizeFunctionOnNextCall(foo);
@@ -271,7 +271,7 @@
   %OptimizeFunctionOnNextCall(foo);
   assertEquals(undefined, foo(dv, 3));
   assertOptimized(foo);
-  %ArrayBufferNeuter(ab);
+  %ArrayBufferDetach(ab);
   assertThrows(() => foo(dv, 4), TypeError);
   assertUnoptimized(foo);
   %OptimizeFunctionOnNextCall(foo);
@@ -295,7 +295,7 @@
   %OptimizeFunctionOnNextCall(foo);
   assertEquals(undefined, foo(dv, 3));
   assertOptimized(foo);
-  %ArrayBufferNeuter(ab);
+  %ArrayBufferDetach(ab);
   assertThrows(() => foo(dv, 4), TypeError);
   assertUnoptimized(foo);
   %OptimizeFunctionOnNextCall(foo);
@@ -319,7 +319,7 @@
   %OptimizeFunctionOnNextCall(foo);
   assertEquals(undefined, foo(dv, 3));
   assertOptimized(foo);
-  %ArrayBufferNeuter(ab);
+  %ArrayBufferDetach(ab);
   assertThrows(() => foo(dv, 4), TypeError);
   assertUnoptimized(foo);
   %OptimizeFunctionOnNextCall(foo);
@@ -343,7 +343,7 @@
   %OptimizeFunctionOnNextCall(foo);
   assertEquals(undefined, foo(dv, 3));
   assertOptimized(foo);
-  %ArrayBufferNeuter(ab);
+  %ArrayBufferDetach(ab);
   assertThrows(() => foo(dv, 4), TypeError);
   assertUnoptimized(foo);
   %OptimizeFunctionOnNextCall(foo);
@@ -367,7 +367,7 @@
   %OptimizeFunctionOnNextCall(foo);
   assertEquals(undefined, foo(dv, 3));
   assertOptimized(foo);
-  %ArrayBufferNeuter(ab);
+  %ArrayBufferDetach(ab);
   assertThrows(() => foo(dv, 4), TypeError);
   assertUnoptimized(foo);
   %OptimizeFunctionOnNextCall(foo);
diff --git a/implementation-contributed/v8/mjsunit/compiler/regress-913232.js b/implementation-contributed/v8/mjsunit/compiler/regress-913232.js
new file mode 100644
index 0000000000..efd7fb8e5f
--- /dev/null
+++ b/implementation-contributed/v8/mjsunit/compiler/regress-913232.js
@@ -0,0 +1,14 @@
+// Copyright 2018 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Flags: --allow-natives-syntax
+
+function* E(b) {
+  while (true) {
+    for (yield* 0; b; yield* 0) {}
+  }
+}
+
+%OptimizeFunctionOnNextCall(E);
+E();
diff --git a/implementation-contributed/v8/mjsunit/es6/classes.js b/implementation-contributed/v8/mjsunit/es6/classes.js
index fa85faf44e..27121ec007 100644
--- a/implementation-contributed/v8/mjsunit/es6/classes.js
+++ b/implementation-contributed/v8/mjsunit/es6/classes.js
@@ -23,10 +23,41 @@
   assertEquals('D2', D2.name);
 
   var E = class {}
-  assertEquals('E', E.name);  // Should be 'E'.
+  assertEquals('E', E.name);
 
   var F = class { constructor() {} };
-  assertEquals('F', F.name);  // Should be 'F'.
+  assertEquals('F', F.name);
+
+  var literal = { E: class {} };
+  assertEquals('E', literal.E.name);
+
+  literal = { E: class F {} };
+  assertEquals('F', literal.E.name);
+
+  literal = { __proto__: class {} };
+  assertEquals('', literal.__proto__.name);
+  assertEquals(
+      undefined, Object.getOwnPropertyDescriptor(literal.__proto__, 'name'));
+
+  literal = { __proto__: class F {} };
+  assertEquals('F', literal.__proto__.name);
+  assertNotEquals(
+      undefined, Object.getOwnPropertyDescriptor(literal.__proto__, 'name'));
+
+  class G {};
+  literal = { __proto__: G };
+  assertEquals('G', literal.__proto__.name);
+
+  var H = class { static name() { return 'A'; } };
+  literal = { __proto__ : H };
+  assertEquals('A', literal.__proto__.name());
+
+  literal = {
+    __proto__: class {
+      static name() { return 'A'; }
+    }
+  };
+  assertEquals('A', literal.__proto__.name());
 })();
 
 
diff --git a/implementation-contributed/v8/mjsunit/es6/typedarray-construct-by-array-like.js b/implementation-contributed/v8/mjsunit/es6/typedarray-construct-by-array-like.js
index 0a55fccf5c..e6be924d8e 100644
--- a/implementation-contributed/v8/mjsunit/es6/typedarray-construct-by-array-like.js
+++ b/implementation-contributed/v8/mjsunit/es6/typedarray-construct-by-array-like.js
@@ -194,7 +194,7 @@ tests.push(function TestFromTypedArraySpecies(constr) {
   assertEquals(1, constructor_read);
 });
 
-tests.push(function TestFromTypedArraySpeciesNeutersBuffer(constr) {
+tests.push(function TestFromTypedArraySpeciesDetachsBuffer(constr) {
   var b = new ArrayBuffer(16);
   var a1 = new constr(b);
 
@@ -203,7 +203,7 @@ tests.push(function TestFromTypedArraySpeciesNeutersBuffer(constr) {
 
   Object.defineProperty(b, 'constructor', {
     get: function() {
-      %ArrayBufferNeuter(b);
+      %ArrayBufferDetach(b);
       return cons;
     }
   });
diff --git a/implementation-contributed/v8/mjsunit/es6/typedarray-neutered.js b/implementation-contributed/v8/mjsunit/es6/typedarray-neutered.js
index f272f4f084..55a76cdc4d 100644
--- a/implementation-contributed/v8/mjsunit/es6/typedarray-neutered.js
+++ b/implementation-contributed/v8/mjsunit/es6/typedarray-neutered.js
@@ -4,8 +4,8 @@
 
 // Flags: --allow-natives-syntax
 
-// Disable the neutering protector.
-%ArrayBufferNeuter(new ArrayBuffer(1024));
+// Disable the detaching protector.
+%ArrayBufferDetach(new ArrayBuffer(1024));
 
 // ArrayBuffer
 
diff --git a/implementation-contributed/v8/mjsunit/es6/typedarray-reduce.js b/implementation-contributed/v8/mjsunit/es6/typedarray-reduce.js
index ba5d7f7a20..2746c57dff 100644
--- a/implementation-contributed/v8/mjsunit/es6/typedarray-reduce.js
+++ b/implementation-contributed/v8/mjsunit/es6/typedarray-reduce.js
@@ -254,13 +254,13 @@ for (var constructor of typedArrayConstructors) {
   var tmp = {
     [Symbol.toPrimitive]() {
       assertUnreachable("Parameter should not be processed when " +
-                        "array.[[ViewedArrayBuffer]] is neutered.");
+                        "array.[[ViewedArrayBuffer]] is detached.");
       return 0;
     }
   };
 
   var array = new constructor([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]);
-  %ArrayBufferNeuter(array.buffer);
+  %ArrayBufferDetach(array.buffer);
   assertThrows(() => array.reduce(sum, tmp), TypeError);
   assertThrows(() => array.reduceRight(sum, tmp), TypeError);
 }
diff --git a/implementation-contributed/v8/mjsunit/es6/typedarray.js b/implementation-contributed/v8/mjsunit/es6/typedarray.js
index 61653dce88..aab12341ac 100644
--- a/implementation-contributed/v8/mjsunit/es6/typedarray.js
+++ b/implementation-contributed/v8/mjsunit/es6/typedarray.js
@@ -636,7 +636,7 @@ function TestTypedArraySet() {
   var detached = false;
   evilarr[1] = {
     [Symbol.toPrimitive]() {
-      %ArrayBufferNeuter(a111.buffer);
+      %ArrayBufferDetach(a111.buffer);
       detached = true;
       return 1;
     }
@@ -648,7 +648,7 @@ function TestTypedArraySet() {
   var tmp = {
     [Symbol.toPrimitive]() {
       assertUnreachable("Parameter should not be processed when " +
-                        "array.[[ViewedArrayBuffer]] is neutered.");
+                        "array.[[ViewedArrayBuffer]] is detached.");
       return 1;
     }
   };
@@ -662,7 +662,7 @@ function TestTypedArraySet() {
       let detached = false;
       const offset = {
         [Symbol.toPrimitive]() {
-          %ArrayBufferNeuter(xs.buffer);
+          %ArrayBufferDetach(xs.buffer);
           detached = true;
           return 0;
         }
@@ -677,7 +677,7 @@ function TestTypedArraySet() {
     for (const klass of typedArrayConstructors) {
       const a = new klass(2);
       for (let i = 0; i < a.length; i++) a[i] = i;
-      %ArrayBufferNeuter(a.buffer);
+      %ArrayBufferDetach(a.buffer);
 
       const b = new klass(2);
       assertThrows(() => b.set(a), TypeError);
diff --git a/implementation-contributed/v8/mjsunit/es7/array-includes-receiver.js b/implementation-contributed/v8/mjsunit/es7/array-includes-receiver.js
index edeae88631..91916aad54 100644
--- a/implementation-contributed/v8/mjsunit/es7/array-includes-receiver.js
+++ b/implementation-contributed/v8/mjsunit/es7/array-includes-receiver.js
@@ -356,7 +356,7 @@ var kTests = {
 
     Detached_Int8Array() {
       var array = new Int8Array(10);
-      %ArrayBufferNeuter(array.buffer);
+      %ArrayBufferDetach(array.buffer);
       assertFalse(Array.prototype.includes.call(array, 0));
       assertFalse(Array.prototype.includes.call(array, 0, 10));
     },
@@ -391,7 +391,7 @@ var kTests = {
 
     Detached_Uint8Array() {
       var array = new Uint8Array(10);
-      %ArrayBufferNeuter(array.buffer);
+      %ArrayBufferDetach(array.buffer);
       assertFalse(Array.prototype.includes.call(array, 0));
       assertFalse(Array.prototype.includes.call(array, 0, 10));
     },
@@ -421,7 +421,7 @@ var kTests = {
 
     Detached_Uint8ClampedArray() {
       var array = new Uint8ClampedArray(10);
-      %ArrayBufferNeuter(array.buffer);
+      %ArrayBufferDetach(array.buffer);
       assertFalse(Array.prototype.includes.call(array, 0));
       assertFalse(Array.prototype.includes.call(array, 0, 10));
     },
@@ -453,7 +453,7 @@ var kTests = {
 
     Detached_Int16Array() {
       var array = new Int16Array(10);
-      %ArrayBufferNeuter(array.buffer);
+      %ArrayBufferDetach(array.buffer);
       assertFalse(Array.prototype.includes.call(array, 0));
       assertFalse(Array.prototype.includes.call(array, 0, 10));
     },
@@ -485,7 +485,7 @@ var kTests = {
 
     Detached_Uint16Array() {
       var array = new Uint16Array(10);
-      %ArrayBufferNeuter(array.buffer);
+      %ArrayBufferDetach(array.buffer);
       assertFalse(Array.prototype.includes.call(array, 0));
       assertFalse(Array.prototype.includes.call(array, 0, 10));
     },
@@ -517,7 +517,7 @@ var kTests = {
 
     Detached_Int32Array() {
       var array = new Int32Array(10);
-      %ArrayBufferNeuter(array.buffer);
+      %ArrayBufferDetach(array.buffer);
       assertFalse(Array.prototype.includes.call(array, 0));
       assertFalse(Array.prototype.includes.call(array, 0, 10));
     },
@@ -550,7 +550,7 @@ var kTests = {
 
     Detached_Uint32Array() {
       var array = new Uint32Array(10);
-      %ArrayBufferNeuter(array.buffer);
+      %ArrayBufferDetach(array.buffer);
       assertFalse(Array.prototype.includes.call(array, 0));
       assertFalse(Array.prototype.includes.call(array, 0, 10));
     },
@@ -583,7 +583,7 @@ var kTests = {
 
     Detached_Float32Array() {
       var array = new Float32Array(10);
-      %ArrayBufferNeuter(array.buffer);
+      %ArrayBufferDetach(array.buffer);
       assertFalse(Array.prototype.includes.call(array, 0));
       assertFalse(Array.prototype.includes.call(array, 0, 10));
     },
@@ -616,7 +616,7 @@ var kTests = {
 
     Detached_Float64Array() {
       var array = new Float32Array(10);
-      %ArrayBufferNeuter(array.buffer);
+      %ArrayBufferDetach(array.buffer);
       assertFalse(Array.prototype.includes.call(array, 0));
       assertFalse(Array.prototype.includes.call(array, 0, 10));
     },
diff --git a/implementation-contributed/v8/mjsunit/harmony/regress/regress-912504.js b/implementation-contributed/v8/mjsunit/harmony/regress/regress-912504.js
new file mode 100644
index 0000000000..78b1992b14
--- /dev/null
+++ b/implementation-contributed/v8/mjsunit/harmony/regress/regress-912504.js
@@ -0,0 +1,11 @@
+// Copyright 2018 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Flags: --always-opt --harmony-object-from-entries --allow-natives-syntax
+
+function test() {
+  Object.fromEntries([[]]);
+  %DeoptimizeNow();
+}
+test();
diff --git a/implementation-contributed/v8/mjsunit/harmony/string-matchAll-deleted-matchAll.js b/implementation-contributed/v8/mjsunit/harmony/string-matchAll-deleted-matchAll.js
new file mode 100644
index 0000000000..5d2985f318
--- /dev/null
+++ b/implementation-contributed/v8/mjsunit/harmony/string-matchAll-deleted-matchAll.js
@@ -0,0 +1,9 @@
+// Copyright 2018 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Flags: --harmony-string-matchall
+
+delete RegExp.prototype[Symbol.matchAll];
+const str = 'a';
+assertThrows(() => str.matchAll(/\w/g), TypeError);
diff --git a/implementation-contributed/v8/mjsunit/messages.js b/implementation-contributed/v8/mjsunit/messages.js
index b80e5abf23..d5c796228c 100644
--- a/implementation-contributed/v8/mjsunit/messages.js
+++ b/implementation-contributed/v8/mjsunit/messages.js
@@ -171,15 +171,15 @@ test(function() {
 for (constructor of typedArrayConstructors) {
   test(() => {
     const ta = new constructor([1]);
-    %ArrayBufferNeuter(ta.buffer);
+    %ArrayBufferDetach(ta.buffer);
     ta.find(() => {});
-  }, "Cannot perform %TypedArray%.prototype.find on a detached ArrayBuffer", TypeError);
+  }, "Cannot perform %TypedArray%.prototype.find on a neutered ArrayBuffer", TypeError);
 
   test(() => {
     const ta = new constructor([1]);
-    %ArrayBufferNeuter(ta.buffer);
+    %ArrayBufferDetach(ta.buffer);
     ta.findIndex(() => {});
-  }, "Cannot perform %TypedArray%.prototype.findIndex on a detached ArrayBuffer", TypeError);
+  }, "Cannot perform %TypedArray%.prototype.findIndex on a neutered ArrayBuffer", TypeError);
 }
 
 // kFirstArgumentNotRegExp
diff --git a/implementation-contributed/v8/mjsunit/mjsunit.status b/implementation-contributed/v8/mjsunit/mjsunit.status
index 76b22d8467..439237f382 100644
--- a/implementation-contributed/v8/mjsunit/mjsunit.status
+++ b/implementation-contributed/v8/mjsunit/mjsunit.status
@@ -107,12 +107,12 @@
 
   ##############################################################################
   # Skip long running tests that time out in debug mode.
-  'generated-transition-stub': [PASS, ['mode == debug or dcheck_always_on', SKIP]],
+  'generated-transition-stub': [PASS, ['mode == debug', SKIP]],
   'migrations': [SKIP],
-  'array-functions-prototype-misc': [PASS, SLOW, ['mode == debug or dcheck_always_on', SKIP]],
-  'compiler/regress-808472': [PASS, ['mode == debug or dcheck_always_on', SKIP]],
+  'array-functions-prototype-misc': [PASS, SLOW, ['mode == debug', SKIP]],
+  'compiler/regress-808472': [PASS, ['mode == debug', SKIP]],
   'es6/promise-all-overflow-1': [SKIP],
-  'es6/promise-all-overflow-2': [PASS, SLOW, ['mode == debug or dcheck_always_on or arch != x64', SKIP]],
+  'es6/promise-all-overflow-2': [PASS, SLOW, ['mode == debug or arch != x64', SKIP]],
 
   ##############################################################################
   # This test sets the umask on a per-process basis and hence cannot be
@@ -140,7 +140,7 @@
   ##############################################################################
   # Tests verifying CHECK and ASSERT.
   'verify-check-false': [FAIL, NO_VARIANTS],
-  'verify-assert-false': [NO_VARIANTS, ['mode == release and dcheck_always_on == False', PASS], ['mode == debug or dcheck_always_on == True', FAIL]],
+  'verify-assert-false': [NO_VARIANTS, ['mode == release and dcheck_always_on == False', PASS], ['mode == debug', FAIL]],
 
   ##############################################################################
   # Tests with different versions for release and debug.
@@ -214,10 +214,10 @@
 
   # TODO(vogelheim): big-object-literal exceeds the stack in debug builds,
   #                  which makes the test useless.
-  'big-object-literal': [PASS, ['mode == debug or dcheck_always_on', SKIP]],
+  'big-object-literal': [PASS, ['mode == debug', SKIP]],
 
   # Runs out of stack space in debug builds.
-  'big-array-literal': [PASS, ['mode == debug or dcheck_always_on', SKIP]],
+  'big-array-literal': [PASS, ['mode == debug', SKIP]],
 
   # BUG(v8:6306).
   'wasm/huge-memory': [SKIP],
@@ -929,4 +929,10 @@
   'wasm/asm-wasm-f64': [SKIP],
 }], # arch == x64
 
+##############################################################################
+['arch in [arm, android_arm, android_ia32, ia32, ppc, s390, s390x, mipsel, mips]', {
+  # TODO(ssauleau): implement BigInt<>Wasm conversion for other arch -
+  # crbug.com/v8/7741
+  'wasm/bigint': [SKIP],
+}], # arch in [arm, android_arm, android_ia32, ia32, ppc, s390, s390x, mipsel, mips]
 ]
diff --git a/implementation-contributed/v8/mjsunit/regress/regress-7773.js b/implementation-contributed/v8/mjsunit/regress/regress-7773.js
new file mode 100644
index 0000000000..7930ae9106
--- /dev/null
+++ b/implementation-contributed/v8/mjsunit/regress/regress-7773.js
@@ -0,0 +1,71 @@
+// Copyright 2018 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+(function testFunctionNames() {
+  let descriptor = {
+    value: '',
+    writable: false,
+    enumerable: false,
+    configurable: true
+  };
+  // Functions have a "name" property by default.
+  assertEquals(
+      descriptor, Object.getOwnPropertyDescriptor(function(){}, 'name'));
+  let a = { fn: function(){} };
+  assertSame('fn', a.fn.name);
+  descriptor.value = 'fn';
+  assertEquals(descriptor, Object.getOwnPropertyDescriptor(a.fn, 'name'));
+
+  let b = { __proto__: function(){} };
+  assertSame('', b.__proto__.name);
+  descriptor.value = '';
+  assertEquals(
+      descriptor, Object.getOwnPropertyDescriptor(b.__proto__, 'name'));
+
+  let c = { fn: function F(){} };
+  assertSame('F', c.fn.name);
+  descriptor.value = 'F';
+  assertEquals(descriptor, Object.getOwnPropertyDescriptor(c.fn, 'name'));
+
+  let d = { __proto__: function E(){} };
+  assertSame('E', d.__proto__.name);
+  descriptor.value = 'E';
+  assertEquals(
+      descriptor, Object.getOwnPropertyDescriptor(d.__proto__, 'name'));
+})();
+
+(function testClassNames() {
+  let descriptor = {
+    value: '',
+    writable: false,
+    enumerable: false,
+    configurable: true
+  };
+
+  // Anonymous classes do not have a "name" property by default.
+  assertSame(undefined, Object.getOwnPropertyDescriptor(class {}, 'name'));
+  descriptor.value = 'C';
+  assertEquals(descriptor, Object.getOwnPropertyDescriptor(class C {}, 'name'));
+
+  let a = { fn: class {} };
+  assertSame('fn', a.fn.name);
+  descriptor.value = 'fn';
+  assertEquals(descriptor, Object.getOwnPropertyDescriptor(a.fn, 'name'));
+
+  let b = { __proto__: class {} };
+  assertSame('', b.__proto__.name);
+  assertSame(
+      undefined, Object.getOwnPropertyDescriptor(b.__proto__, 'name'));
+
+  let c = { fn: class F {} };
+  assertSame('F', c.fn.name);
+  descriptor.value = 'F';
+  assertEquals(descriptor, Object.getOwnPropertyDescriptor(c.fn, 'name'));
+
+  let d = { __proto__: class F {} };
+  assertSame('F', d.__proto__.name);
+  descriptor.value = 'F';
+  assertEquals(
+      descriptor, Object.getOwnPropertyDescriptor(d.__proto__, 'name'));
+})();
diff --git a/implementation-contributed/v8/mjsunit/regress/regress-crbug-913212.js b/implementation-contributed/v8/mjsunit/regress/regress-crbug-913212.js
new file mode 100644
index 0000000000..2de99d6efc
--- /dev/null
+++ b/implementation-contributed/v8/mjsunit/regress/regress-crbug-913212.js
@@ -0,0 +1,11 @@
+// Copyright 2018 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+const globalThis = this;
+Object.setPrototypeOf(this, new Proxy({}, {
+  get(target, prop, receiver) {
+    assertTrue(receiver === globalThis);
+  }
+}));
+undefined_name_access
diff --git a/implementation-contributed/v8/mjsunit/regress/regress-crbug-913296.js b/implementation-contributed/v8/mjsunit/regress/regress-crbug-913296.js
new file mode 100644
index 0000000000..3fab06607f
--- /dev/null
+++ b/implementation-contributed/v8/mjsunit/regress/regress-crbug-913296.js
@@ -0,0 +1,13 @@
+// Copyright 2018 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Flags: --allow-natives-syntax
+
+function foo(trigger) {
+  return Object.is((trigger ? -0 : 0) - 0, -0);
+}
+
+assertFalse(foo(false));
+%OptimizeFunctionOnNextCall(foo);
+assertTrue(foo(true));
diff --git a/implementation-contributed/v8/mjsunit/regress/wasm/regress-913804.js b/implementation-contributed/v8/mjsunit/regress/wasm/regress-913804.js
new file mode 100644
index 0000000000..c12013c9f8
--- /dev/null
+++ b/implementation-contributed/v8/mjsunit/regress/wasm/regress-913804.js
@@ -0,0 +1,17 @@
+// Copyright 2018 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+load('test/mjsunit/wasm/wasm-constants.js');
+load('test/mjsunit/wasm/wasm-module-builder.js');
+
+const builder = new WasmModuleBuilder();
+builder.addFunction('main', kSig_v_v).addBody([
+  kExprLoop, kWasmStmt,        // loop
+  /**/ kExprBr, 0x01,          //   br depth=1
+  /**/ kExprBlock, kWasmStmt,  //   block
+  /**/ /**/ kExprBr, 0x02,     //     br depth=2
+  /**/ /**/ kExprEnd,          //     end [block]
+  /**/ kExprEnd                //   end [loop]
+]);
+builder.instantiate();
diff --git a/implementation-contributed/v8/test262/test262.status b/implementation-contributed/v8/test262/test262.status
index ecab026c98..e43eba805d 100644
--- a/implementation-contributed/v8/test262/test262.status
+++ b/implementation-contributed/v8/test262/test262.status
@@ -179,232 +179,232 @@
 
   # https://bugs.chromium.org/p/v8/issues/detail?id=896
   'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_F': [FAIL_PHASE_ONLY],
-  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_F-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Invalid': [FAIL],
-  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Invalid-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_N': [FAIL],
-  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_N-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_No': [FAIL],
-  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_No-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_T': [FAIL],
-  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_T-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Y': [FAIL],
-  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Y-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Yes': [FAIL],
-  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Yes-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/character-class-range-end': [FAIL],
-  'built-ins/RegExp/property-escapes/character-class-range-no-dash-end': [FAIL],
-  'built-ins/RegExp/property-escapes/character-class-range-no-dash-start': [FAIL],
-  'built-ins/RegExp/property-escapes/character-class-range-start': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Block-implicit': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Block-implicit-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script-implicit': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script-implicit-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-Is-prefix-Script': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-Is-prefix-Script-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-circumflex-negation': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-circumflex-negation-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-empty': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-empty-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-invalid': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-invalid-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-no-braces': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-no-braces-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-no-braces-value': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-no-braces-value-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-separator': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-separator-and-value-only': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-separator-and-value-only-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-separator-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-separator-only': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-separator-only-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-unclosed': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-unclosed-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-unopened': [FAIL],
-  'built-ins/RegExp/property-escapes/grammar-extension-unopened-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-01': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-01-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-02': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-02-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-03': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-03-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-04': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-04-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-05': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-05-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-06': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-06-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-07': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-07-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-08': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-08-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-09': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-09-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-10': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-10-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-11': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-11-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-12': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-12-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-13': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-13-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-14': [FAIL],
-  'built-ins/RegExp/property-escapes/loose-matching-14-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category': [FAIL],
-  'built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category-equals': [FAIL],
-  'built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category-equals-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script': [FAIL],
-  'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script-equals': [FAIL],
-  'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script-equals-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions': [FAIL],
-  'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions-equals': [FAIL],
-  'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions-equals-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/non-existent-binary-property': [FAIL],
-  'built-ins/RegExp/property-escapes/non-existent-binary-property-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/non-existent-property-and-value': [FAIL],
-  'built-ins/RegExp/property-escapes/non-existent-property-and-value-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/non-existent-property-existing-value': [FAIL],
-  'built-ins/RegExp/property-escapes/non-existent-property-existing-value-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/non-existent-property-value-General_Category-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/non-existent-property-value-Script': [FAIL],
-  'built-ins/RegExp/property-escapes/non-existent-property-value-Script-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/non-existent-property-value-Script_Extensions': [FAIL],
-  'built-ins/RegExp/property-escapes/non-existent-property-value-Script_Extensions-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/non-existent-property-value-general-category': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Composition_Exclusion': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Composition_Exclusion-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFC': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFC-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFD': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFD-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKC': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKC-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKD': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKD-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-FC_NFKC_Closure': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-FC_NFKC_Closure-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Full_Composition_Exclusion': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Full_Composition_Exclusion-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Grapheme_Link': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Grapheme_Link-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Hyphen': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Hyphen-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Alphabetic': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Alphabetic-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Default_Ignorable_Code_Point': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Default_Ignorable_Code_Point-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Grapheme_Extend': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Grapheme_Extend-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Continue': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Continue-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Start': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Start-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Lowercase': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Lowercase-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Math': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Math-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Uppercase': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Uppercase-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Prepended_Concatenation_Mark': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-binary-property-Prepended_Concatenation_Mark-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-property-Block-with-value': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-property-Block-with-value-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-property-FC_NFKC_Closure': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-property-FC_NFKC_Closure-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-property-Line_Break': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-property-Line_Break-negated': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-property-Line_Break-with-value': [FAIL],
-  'built-ins/RegExp/property-escapes/unsupported-property-Line_Break-with-value-negated': [FAIL],
-  'language/literals/regexp/early-err-pattern': [FAIL],
-  'language/literals/regexp/invalid-braced-quantifier-exact': [FAIL],
-  'language/literals/regexp/invalid-braced-quantifier-lower': [FAIL],
-  'language/literals/regexp/invalid-braced-quantifier-range': [FAIL],
-  'language/literals/regexp/invalid-optional-lookbehind': [FAIL],
-  'language/literals/regexp/invalid-optional-negative-lookbehind': [FAIL],
-  'language/literals/regexp/invalid-range-lookbehind': [FAIL],
-  'language/literals/regexp/invalid-range-negative-lookbehind': [FAIL],
-  'language/literals/regexp/named-groups/invalid-dangling-groupname': [FAIL],
-  'language/literals/regexp/named-groups/invalid-dangling-groupname-2': [FAIL],
-  'language/literals/regexp/named-groups/invalid-dangling-groupname-2-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-dangling-groupname-3': [FAIL],
-  'language/literals/regexp/named-groups/invalid-dangling-groupname-3-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-dangling-groupname-4': [FAIL],
-  'language/literals/regexp/named-groups/invalid-dangling-groupname-4-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-dangling-groupname-5': [FAIL],
-  'language/literals/regexp/named-groups/invalid-dangling-groupname-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-dangling-groupname-without-group-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-duplicate-groupspecifier': [FAIL],
-  'language/literals/regexp/named-groups/invalid-duplicate-groupspecifier-2': [FAIL],
-  'language/literals/regexp/named-groups/invalid-duplicate-groupspecifier-2-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-duplicate-groupspecifier-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-empty-groupspecifier': [FAIL],
-  'language/literals/regexp/named-groups/invalid-empty-groupspecifier-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-identity-escape-in-capture-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-incomplete-groupname': [FAIL],
-  'language/literals/regexp/named-groups/invalid-incomplete-groupname-2': [FAIL],
-  'language/literals/regexp/named-groups/invalid-incomplete-groupname-2-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-incomplete-groupname-3': [FAIL],
-  'language/literals/regexp/named-groups/invalid-incomplete-groupname-3-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-incomplete-groupname-4': [FAIL],
-  'language/literals/regexp/named-groups/invalid-incomplete-groupname-5': [FAIL],
-  'language/literals/regexp/named-groups/invalid-incomplete-groupname-6': [FAIL],
-  'language/literals/regexp/named-groups/invalid-incomplete-groupname-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-incomplete-groupname-without-group-2-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-incomplete-groupname-without-group-3-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-incomplete-groupname-without-group-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-non-id-continue-groupspecifier': [FAIL],
-  'language/literals/regexp/named-groups/invalid-non-id-continue-groupspecifier-4': [FAIL],
-  'language/literals/regexp/named-groups/invalid-non-id-continue-groupspecifier-4-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier': [FAIL],
-  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-2': [FAIL],
-  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-2-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-3': [FAIL],
-  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-4': [FAIL],
-  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-4-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-5': [FAIL],
-  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-5-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-6': [FAIL],
-  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-7': [FAIL],
-  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-8': [FAIL],
-  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-8-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-9-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-numeric-groupspecifier': [FAIL],
-  'language/literals/regexp/named-groups/invalid-numeric-groupspecifier-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-punctuator-starting-groupspecifier': [FAIL],
-  'language/literals/regexp/named-groups/invalid-punctuator-starting-groupspecifier-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-punctuator-within-groupspecifier': [FAIL],
-  'language/literals/regexp/named-groups/invalid-punctuator-within-groupspecifier-u': [FAIL],
-  'language/literals/regexp/named-groups/invalid-u-escape-in-groupspecifier': [FAIL],
-  'language/literals/regexp/named-groups/invalid-u-escape-in-groupspecifier-2': [FAIL],
-  'language/literals/regexp/named-groups/invalid-unterminated-groupspecifier': [FAIL],
-  'language/literals/regexp/named-groups/invalid-unterminated-groupspecifier-u': [FAIL],
-  'language/literals/regexp/u-dec-esc': [FAIL],
-  'language/literals/regexp/u-invalid-class-escape': [FAIL],
-  'language/literals/regexp/u-invalid-extended-pattern-char': [FAIL],
-  'language/literals/regexp/u-invalid-identity-escape': [FAIL],
-  'language/literals/regexp/u-invalid-legacy-octal-escape': [FAIL],
-  'language/literals/regexp/u-invalid-non-empty-class-ranges': [FAIL],
-  'language/literals/regexp/u-invalid-non-empty-class-ranges-no-dash-a': [FAIL],
-  'language/literals/regexp/u-invalid-non-empty-class-ranges-no-dash-ab': [FAIL],
-  'language/literals/regexp/u-invalid-non-empty-class-ranges-no-dash-b': [FAIL],
-  'language/literals/regexp/u-invalid-oob-decimal-escape': [FAIL],
-  'language/literals/regexp/u-invalid-optional-lookahead': [FAIL],
-  'language/literals/regexp/u-invalid-optional-lookbehind': [FAIL],
-  'language/literals/regexp/u-invalid-optional-negative-lookahead': [FAIL],
-  'language/literals/regexp/u-invalid-optional-negative-lookbehind': [FAIL],
-  'language/literals/regexp/u-invalid-range-lookahead': [FAIL],
-  'language/literals/regexp/u-invalid-range-lookbehind': [FAIL],
-  'language/literals/regexp/u-invalid-range-negative-lookahead': [FAIL],
-  'language/literals/regexp/u-invalid-range-negative-lookbehind': [FAIL],
-  'language/literals/regexp/u-unicode-esc-bounds': [FAIL],
-  'language/literals/regexp/u-unicode-esc-non-hex': [FAIL],
-  'language/literals/regexp/unicode-escape-nls-err': [FAIL],
+  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_F-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Invalid': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Invalid-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_N': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_N-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_No': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_No-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_T': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_T-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Y': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Y-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Yes': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Yes-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/character-class-range-end': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/character-class-range-no-dash-end': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/character-class-range-no-dash-start': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/character-class-range-start': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Block-implicit': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Block-implicit-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script-implicit': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script-implicit-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-Is-prefix-Script': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-Is-prefix-Script-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-circumflex-negation': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-circumflex-negation-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-empty': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-empty-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-invalid': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-invalid-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-no-braces': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-no-braces-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-no-braces-value': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-no-braces-value-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-separator': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-separator-and-value-only': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-separator-and-value-only-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-separator-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-separator-only': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-separator-only-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-unclosed': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-unclosed-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-unopened': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/grammar-extension-unopened-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-01': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-01-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-02': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-02-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-03': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-03-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-04': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-04-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-05': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-05-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-06': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-06-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-07': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-07-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-08': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-08-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-09': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-09-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-10': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-10-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-11': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-11-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-12': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-12-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-13': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-13-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-14': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/loose-matching-14-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category-equals': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category-equals-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script-equals': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script-equals-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions-equals': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions-equals-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-existent-binary-property': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-existent-binary-property-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-existent-property-and-value': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-existent-property-and-value-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-existent-property-existing-value': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-existent-property-existing-value-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-existent-property-value-General_Category-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-existent-property-value-Script': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-existent-property-value-Script-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-existent-property-value-Script_Extensions': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-existent-property-value-Script_Extensions-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/non-existent-property-value-general-category': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Composition_Exclusion': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Composition_Exclusion-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFC': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFC-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFD': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFD-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKC': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKC-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKD': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKD-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-FC_NFKC_Closure': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-FC_NFKC_Closure-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Full_Composition_Exclusion': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Full_Composition_Exclusion-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Grapheme_Link': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Grapheme_Link-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Hyphen': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Hyphen-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Alphabetic': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Alphabetic-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Default_Ignorable_Code_Point': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Default_Ignorable_Code_Point-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Grapheme_Extend': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Grapheme_Extend-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Continue': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Continue-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Start': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Start-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Lowercase': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Lowercase-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Math': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Math-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Uppercase': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Uppercase-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Prepended_Concatenation_Mark': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-binary-property-Prepended_Concatenation_Mark-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-property-Block-with-value': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-property-Block-with-value-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-property-FC_NFKC_Closure': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-property-FC_NFKC_Closure-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-property-Line_Break': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-property-Line_Break-negated': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-property-Line_Break-with-value': [FAIL_PHASE_ONLY],
+  'built-ins/RegExp/property-escapes/unsupported-property-Line_Break-with-value-negated': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/early-err-pattern': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/invalid-braced-quantifier-exact': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/invalid-braced-quantifier-lower': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/invalid-braced-quantifier-range': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/invalid-optional-lookbehind': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/invalid-optional-negative-lookbehind': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/invalid-range-lookbehind': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/invalid-range-negative-lookbehind': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-dangling-groupname': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-dangling-groupname-2': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-dangling-groupname-2-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-dangling-groupname-3': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-dangling-groupname-3-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-dangling-groupname-4': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-dangling-groupname-4-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-dangling-groupname-5': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-dangling-groupname-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-dangling-groupname-without-group-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-duplicate-groupspecifier': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-duplicate-groupspecifier-2': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-duplicate-groupspecifier-2-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-duplicate-groupspecifier-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-empty-groupspecifier': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-empty-groupspecifier-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-identity-escape-in-capture-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-incomplete-groupname': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-incomplete-groupname-2': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-incomplete-groupname-2-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-incomplete-groupname-3': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-incomplete-groupname-3-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-incomplete-groupname-4': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-incomplete-groupname-5': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-incomplete-groupname-6': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-incomplete-groupname-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-incomplete-groupname-without-group-2-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-incomplete-groupname-without-group-3-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-incomplete-groupname-without-group-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-non-id-continue-groupspecifier': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-non-id-continue-groupspecifier-4': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-non-id-continue-groupspecifier-4-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-2': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-2-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-3': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-4': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-4-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-5': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-5-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-6': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-7': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-8': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-8-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-9-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-numeric-groupspecifier': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-numeric-groupspecifier-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-punctuator-starting-groupspecifier': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-punctuator-starting-groupspecifier-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-punctuator-within-groupspecifier': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-punctuator-within-groupspecifier-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-u-escape-in-groupspecifier': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-u-escape-in-groupspecifier-2': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-unterminated-groupspecifier': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/named-groups/invalid-unterminated-groupspecifier-u': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/u-dec-esc': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/u-invalid-class-escape': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/u-invalid-extended-pattern-char': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/u-invalid-identity-escape': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/u-invalid-legacy-octal-escape': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/u-invalid-non-empty-class-ranges': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/u-invalid-non-empty-class-ranges-no-dash-a': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/u-invalid-non-empty-class-ranges-no-dash-ab': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/u-invalid-non-empty-class-ranges-no-dash-b': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/u-invalid-oob-decimal-escape': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/u-invalid-optional-lookahead': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/u-invalid-optional-lookbehind': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/u-invalid-optional-negative-lookahead': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/u-invalid-optional-negative-lookbehind': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/u-invalid-range-lookahead': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/u-invalid-range-lookbehind': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/u-invalid-range-negative-lookahead': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/u-invalid-range-negative-lookbehind': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/u-unicode-esc-bounds': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/u-unicode-esc-non-hex': [FAIL_PHASE_ONLY],
+  'language/literals/regexp/unicode-escape-nls-err': [FAIL_PHASE_ONLY],
 
   # https://bugs.chromium.org/p/v8/issues/detail?id=7828
   'language/statements/try/early-catch-function': [FAIL],
@@ -586,10 +586,6 @@
   'intl402/NumberFormat/prototype/format/format-fraction-digits': [FAIL],
   'intl402/NumberFormat/prototype/format/format-significant-digits': [FAIL],
 
-  # https://bugs.chromium.org/p/v8/issues/detail?id=7481
-  'intl402/NumberFormat/ignore-invalid-unicode-ext-values': [FAIL],
-  'intl402/DateTimeFormat/ignore-invalid-unicode-ext-values': [FAIL],
-
   # https://bugs.chromium.org/p/v8/issues/detail?id=7482
   'intl402/DateTimeFormat/prototype/resolvedOptions/resolved-locale-with-hc-unicode': [FAIL],
 
@@ -604,7 +600,9 @@
   # https://crbug.com/v8/7808
   'intl402/String/prototype/localeCompare/returns-same-results-as-Collator': [SKIP],
   'intl402/Collator/prototype/compare/bound-to-collator-instance': [SKIP],
-  'intl402/Collator/ignore-invalid-unicode-ext-values': [SKIP],
+
+  # https://github.com/tc39/ecma402/issues/223
+  'intl402/Collator/missing-unicode-ext-value-defaults-to-true': [FAIL],
 
   # https://bugs.chromium.org/p/v8/issues/detail?id=8260
   'intl402/Locale/constructor-non-iana-canon': [FAIL],
@@ -672,14 +670,13 @@
   'intl402/Segmenter/prototype/segment/segment-word': [FAIL],
 
   # https://bugs.chromium.org/p/v8/issues/detail?id=8021
-  'built-ins/Object/fromEntries/requires-argument': [FAIL],
+  'built-ins/Object/fromEntries/requires-argument': [SKIP],
   ######################## NEEDS INVESTIGATION ###########################
 
   # These test failures are specific to the intl402 suite and need investigation
   # to be either marked as bugs with issues filed for them or as deliberate
   # incompatibilities if the test cases turn out to be broken or ambiguous.
   # Some of these are related to v8:4361 in being visible side effects from Intl.
-  'intl402/DateTimeFormat/prototype/resolvedOptions/hourCycle': [FAIL],
 
   # https://bugs.chromium.org/p/v8/issues/detail?id=7833
   'built-ins/Atomics/wait/cannot-suspend-throws': [SKIP],
@@ -734,6 +731,10 @@
   'harness/detachArrayBuffer': [SKIP],
   'harness/detachArrayBuffer-host-detachArrayBuffer': [SKIP],
 
+  # Test needs to be updated to spec changes.
+  # https://github.com/tc39/test262/pull/1990
+  'built-ins/String/prototype/matchAll/regexp-prototype-has-no-matchAll': [FAIL],
+
   ############################ SKIPPED TESTS #############################
 
   # These tests take a looong time to run.
-- 
GitLab