From 04839204ac26d25fffcff63b83d4cd3960691435 Mon Sep 17 00:00:00 2001
From: test262-automation <test262-automation@bocoup.com>
Date: Wed, 7 Nov 2018 18:56:42 +0000
Subject: [PATCH] [v8-test262-automation] Changes from
 https://github.com/v8/v8.git at sha ab445f8b on Wed Nov 07 2018 18:56:14
 GMT+0000 (Coordinated Universal Time)

---
 .../v8/intl/intl.status                       |   3 +
 .../v8/intl/regress-8413-day.js               | 135 +++
 .../v8/intl/regress-8413-era.js               | 135 +++
 .../v8/intl/regress-8413-hour.js              | 135 +++
 .../v8/intl/regress-8413-minute.js            | 135 +++
 .../v8/intl/regress-8413-month.js             | 135 +++
 .../v8/intl/regress-8413-second.js            | 135 +++
 .../v8/intl/regress-8413-timeZoneName.js      | 135 +++
 .../v8/intl/regress-8413-weekday.js           | 135 +++
 .../v8/intl/regress-8413-year.js              | 135 +++
 .../v8/intl/regress-8414.js                   | 806 ++++++++++++++++++
 .../v8/mjsunit/arrow-with.js                  |   7 +
 .../v8/mjsunit/compiler/osr-assert.js         |   9 +-
 .../v8/mjsunit/es9/object-spread-ic.js        |  22 +
 .../v8/mjsunit/mjsunit.status                 |   7 +-
 15 files changed, 2062 insertions(+), 7 deletions(-)
 create mode 100644 implementation-contributed/v8/intl/regress-8413-day.js
 create mode 100644 implementation-contributed/v8/intl/regress-8413-era.js
 create mode 100644 implementation-contributed/v8/intl/regress-8413-hour.js
 create mode 100644 implementation-contributed/v8/intl/regress-8413-minute.js
 create mode 100644 implementation-contributed/v8/intl/regress-8413-month.js
 create mode 100644 implementation-contributed/v8/intl/regress-8413-second.js
 create mode 100644 implementation-contributed/v8/intl/regress-8413-timeZoneName.js
 create mode 100644 implementation-contributed/v8/intl/regress-8413-weekday.js
 create mode 100644 implementation-contributed/v8/intl/regress-8413-year.js
 create mode 100644 implementation-contributed/v8/intl/regress-8414.js
 create mode 100644 implementation-contributed/v8/mjsunit/arrow-with.js

diff --git a/implementation-contributed/v8/intl/intl.status b/implementation-contributed/v8/intl/intl.status
index d70056f049..73ed5b99b5 100644
--- a/implementation-contributed/v8/intl/intl.status
+++ b/implementation-contributed/v8/intl/intl.status
@@ -29,6 +29,9 @@
 [ALWAYS, {
   # TODO(jochen): The following test is flaky.
   'overrides/caching': [PASS, FAIL],
+
+  # https://bugs.chromium.org/p/v8/issues/detail?id=8414
+  'regress-8414': [FAIL],
 }],  # ALWAYS
 
 ['variant == no_wasm_traps', {
diff --git a/implementation-contributed/v8/intl/regress-8413-day.js b/implementation-contributed/v8/intl/regress-8413-day.js
new file mode 100644
index 0000000000..52881ac671
--- /dev/null
+++ b/implementation-contributed/v8/intl/regress-8413-day.js
@@ -0,0 +1,135 @@
+// 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.
+
+// All the known locales egrep by
+// find third_party/icu/source/data/locales/*.txt|cut -d: -f 1| \
+//     sort -u|cut -d/ -f6|cut -d. -f1|tr "_" "-"
+let locales = [
+  "af-NA", "af", "af-ZA", "agq-CM", "agq", "ak-GH", "ak", "am-ET", "am", "an",
+  "ar-001", "ar-AE", "ar-BH", "ar-DJ", "ar-DZ", "ar-EG", "ar-EH", "ar-ER",
+  "ar-IL", "ar-IQ", "ar-JO", "ar-KM", "ar-KW", "ar-LB", "ar-LY", "ar-MA",
+  "ar-MR", "ar-OM", "ar-PS", "ar-QA", "ar-SA", "ar-SD", "ar-SO", "ar-SS",
+  "ars", "ar-SY", "ar-TD", "ar-TN", "ar", "ar-YE", "asa", "asa-TZ", "as-IN",
+  "ast-ES", "ast", "as", "az-AZ", "az-Cyrl-AZ", "az-Cyrl", "az-Latn-AZ",
+  "az-Latn", "az", "bas-CM", "bas", "be-BY", "bem", "bem-ZM", "be", "bez",
+  "bez-TZ", "bg-BG", "bg", "bm-ML", "bm", "bn-BD", "bn-IN", "bn", "bo-CN",
+  "bo-IN", "bo", "br-FR", "br", "brx-IN", "brx", "bs-BA", "bs-Cyrl-BA",
+  "bs-Cyrl", "bs-Latn-BA", "bs-Latn", "bs", "ca-AD", "ca-ES", "ca-FR",
+  "ca-IT", "ca", "ccp-BD", "ccp-IN", "ccp", "ce-RU", "ce", "cgg", "cgg-UG",
+  "chr", "chr-US", "ckb-IQ", "ckb-IR", "ckb", "cs-CZ", "cs", "cy-GB", "cy",
+  "da-DK", "da-GL", "da", "dav-KE", "dav", "de-AT", "de-BE", "de-CH", "de-DE",
+  "de-IT", "de-LI", "de-LU", "de", "dje-NE", "dje", "dsb-DE", "dsb", "dua-CM",
+  "dua", "dyo-SN", "dyo", "dz-BT", "dz", "ebu-KE", "ebu", "ee-GH", "ee-TG",
+  "ee", "el-CY", "el-GR", "el", "en-001", "en-150", "en-AG", "en-AI", "en-AS",
+  "en-AT", "en-AU", "en-BB", "en-BE", "en-BI", "en-BM", "en-BS", "en-BW",
+  "en-BZ", "en-CA", "en-CC", "en-CH", "en-CK", "en-CM", "en-CX", "en-CY",
+  "en-DE", "en-DG", "en-DK", "en-DM", "en-ER", "en-FI", "en-FJ", "en-FK",
+  "en-FM", "en-GB", "en-GD", "en-GG", "en-GH", "en-GI", "en-GM", "en-GU",
+  "en-GY", "en-HK", "en-IE", "en-IL", "en-IM", "en-IN", "en-IO", "en-JE",
+  "en-JM", "en-KE", "en-KI", "en-KN", "en-KY", "en-LC", "en-LR", "en-LS",
+  "en-MG", "en-MH", "en-MO", "en-MP", "en-MS", "en-MT", "en-MU", "en-MW",
+  "en-MY", "en-NA", "en-NF", "en-NG", "en-NH", "en-NL", "en-NR", "en-NU",
+  "en-NZ", "en-PG", "en-PH", "en-PK", "en-PN", "en-PR", "en-PW", "en-RH",
+  "en-RW", "en-SB", "en-SC", "en-SD", "en-SE", "en-SG", "en-SH", "en-SI",
+  "en-SL", "en-SS", "en-SX", "en-SZ", "en-TC", "en-TK", "en-TO", "en-TT",
+  "en-TV", "en", "en-TZ", "en-UG", "en-UM", "en-US-POSIX", "en-US", "en-VC",
+  "en-VG", "en-VI", "en-VU", "en-WS", "en-ZA", "en-ZM", "en-ZW", "eo", "es-419",
+  "es-AR", "es-BO", "es-BR", "es-BZ", "es-CL", "es-CO", "es-CR", "es-CU",
+  "es-DO", "es-EA", "es-EC", "es-ES", "es-GQ", "es-GT", "es-HN", "es-IC",
+  "es-MX", "es-NI", "es-PA", "es-PE", "es-PH", "es-PR", "es-PY", "es-SV", "es",
+  "es-US", "es-UY", "es-VE", "et-EE", "et", "eu-ES", "eu", "ewo-CM", "ewo",
+  "fa-AF", "fa-IR", "fa", "ff", "fi-FI", "fil-PH", "fil", "fi", "fo-DK",
+  "fo-FO", "fo", "fr-BE", "fr-BF", "fr-BI", "fr-BJ", "fr-BL", "fr-CA", "fr-CD",
+  "fr-CF", "fr-CG", "fr-CH", "fr-CI", "fr-CM", "fr-DJ", "fr-DZ", "fr-FR",
+  "fr-GA", "fr-GF", "fr-GN", "fr-GP", "fr-GQ", "fr-HT", "fr-KM", "fr-LU",
+  "fr-MA", "fr-MC", "fr-MF", "fr-MG", "fr-ML", "fr-MQ", "fr-MR", "fr-MU",
+  "fr-NC", "fr-NE", "fr-PF", "fr-PM", "fr-RE", "fr-RW", "fr-SC", "fr-SN",
+  "fr-SY", "fr-TD", "fr-TG", "fr-TN", "fr", "fr-VU", "fr-WF", "fr-YT",
+  "fur-IT", "fur", "fy-NL", "fy", "ga-IE", "ga", "gd-GB", "gd", "gl-ES", "gl",
+  "gsw-CH", "gsw-FR", "gsw-LI", "gsw", "gu-IN", "gu", "guz-KE", "guz", "gv-IM",
+  "gv", "ha-GH", "ha-NE", "ha-NG", "ha", "haw", "haw-US", "he-IL", "he",
+  "hi-IN", "hi", "hr-BA", "hr-HR", "hr", "hsb-DE", "hsb", "hu-HU", "hu",
+  "hy-AM", "hy", "ia-001", "ia", "id-ID", "id", "ig-NG", "ig", "ii-CN", "ii",
+  "in-ID", "in", "is-IS", "is", "it-CH", "it-IT", "it-SM", "it", "it-VA",
+  "iw-IL", "iw", "ja-JP", "ja", "jgo-CM", "jgo", "jmc",
+  "jmc-TZ", "jv-ID", "jv", "kab-DZ", "kab", "ka-GE", "kam-KE", "kam", "ka",
+  "kde", "kde-TZ", "kea-CV", "kea", "khq-ML", "khq", "ki-KE", "ki", "kkj-CM",
+  "kkj", "kk-KZ", "kk", "kl-GL", "kln-KE", "kln", "kl", "km-KH", "km", "kn-IN",
+  "kn", "kok-IN", "ko-KP", "ko-KR", "kok", "ko", "ksb", "ksb-TZ", "ksf-CM",
+  "ksf", "ksh-DE", "ksh", "ks-IN", "ks", "ku-TR", "ku", "kw-GB", "kw", "ky-KG",
+  "ky", "lag", "lag-TZ", "lb-LU", "lb", "lg", "lg-UG", "lkt", "lkt-US", "ln-AO",
+  "ln-CD", "ln-CF", "ln-CG", "ln", "lo-LA", "lo", "lrc-IQ", "lrc-IR", "lrc",
+  "lt-LT", "lt", "lu-CD", "luo-KE", "luo", "lu", "luy-KE", "luy", "lv-LV", "lv",
+  "mas-KE", "mas", "mas-TZ", "mer-KE", "mer", "mfe-MU", "mfe", "mgh-MZ", "mgh",
+  "mg-MG", "mgo-CM", "mgo", "mg", "mi-NZ", "mi", "mk-MK", "mk", "ml-IN", "ml",
+  "mn-MN", "mn", "mo", "mr-IN", "mr", "ms-BN", "ms-MY", "ms-SG", "ms", "mt-MT",
+  "mt", "mua-CM", "mua", "my-MM", "my", "mzn-IR", "mzn", "naq-NA", "naq",
+  "nb-NO", "nb-SJ", "nb", "nds-DE", "nds-NL", "nds", "nd", "nd-ZW", "ne-IN",
+  "ne-NP", "ne", "nl-AW", "nl-BE", "nl-BQ", "nl-CW", "nl-NL", "nl-SR", "nl-SX",
+  "nl", "nmg-CM", "nmg", "nnh-CM", "nnh", "nn-NO", "nn", "no-NY", "no-NO",
+  "no", "nus-SS", "nus", "nyn", "nyn-UG", "om-ET", "om-KE", "om", "or-IN", "or",
+  "os-GE", "os-RU", "os", "pa-Arab-PK", "pa-Arab", "pa-Guru-IN", "pa-Guru",
+  "pa-IN", "pa-PK", "pa", "pl-PL", "pl", "ps-AF", "ps", "pt-AO", "pt-BR",
+  "pt-CH", "pt-CV", "pt-GQ", "pt-GW", "pt-LU", "pt-MO", "pt-MZ", "pt-PT",
+  "pt-ST", "pt-TL", "pt", "qu-BO", "qu-EC", "qu-PE", "qu", "rm-CH", "rm",
+  "rn-BI", "rn", "rof", "rof-TZ", "ro-MD", "root", "ro-RO", "ro", "ru-BY",
+  "ru-KG", "ru-KZ", "ru-MD", "ru-RU", "ru", "ru-UA", "rwk", "rwk-TZ", "rw-RW",
+  "rw", "sah-RU", "sah", "saq-KE", "saq", "sbp", "sbp-TZ", "sd-PK", "sd",
+  "se-FI", "seh-MZ", "seh", "se-NO", "se-SE", "ses-ML", "ses", "se", "sg-CF",
+  "sg", "sh-BA", "sh-CS", "shi-Latn-MA", "shi-Latn", "shi-MA", "shi-Tfng-MA",
+  "shi-Tfng", "shi", "sh", "sh-YU", "si-LK", "si", "sk-SK", "sk", "sl-SI", "sl",
+  "smn-FI", "smn", "sn", "sn-ZW", "so-DJ", "so-ET", "so-KE", "so-SO", "so",
+  "sq-AL", "sq-MK", "sq", "sq-XK", "sr-BA", "sr-CS", "sr-Cyrl-BA", "sr-Cyrl-CS",
+  "sr-Cyrl-ME", "sr-Cyrl-RS", "sr-Cyrl", "sr-Cyrl-XK", "sr-Cyrl-YU",
+  "sr-Latn-BA", "sr-Latn-CS", "sr-Latn-ME", "sr-Latn-RS", "sr-Latn",
+  "sr-Latn-XK", "sr-Latn-YU", "sr-ME", "sr-RS", "sr", "sr-XK", "sr-YU", "sv-AX",
+  "sv-FI", "sv-SE", "sv", "sw-CD", "sw-KE", "sw", "sw-TZ", "sw-UG", "ta-IN",
+  "ta-LK", "ta-MY", "ta-SG", "ta", "te-IN", "teo-KE", "teo", "teo-UG", "te",
+  "tg-TJ", "tg", "th-TH", "th", "ti-ER", "ti-ET", "ti",
+  "tk-TM", "tk", "tl-PH", "tl", "to-TO", "to", "tr-CY", "tr-TR", "tr", "tt-RU",
+  "tt", "twq-NE", "twq", "tzm-MA", "tzm", "ug-CN", "ug", "uk", "uk-UA", "ur-IN",
+  "ur-PK", "ur", "uz-AF", "uz-Arab-AF", "uz-Arab", "uz-Cyrl", "uz-Cyrl-UZ",
+  "uz-Latn", "uz-Latn-UZ", "uz", "uz-UZ", "vai-Latn-LR", "vai-Latn", "vai-LR",
+  "vai", "vai-Vaii-LR", "vai-Vaii", "vi", "vi-VN", "vun", "vun-TZ", "wae-CH",
+  "wae", "wa", "wo-SN", "wo", "xh", "xh-ZA", "xog", "xog-UG", "yav-CM", "yav",
+  "yi-001", "yi", "yo-BJ", "yo-NG", "yo", "yue-CN", "yue-Hans-CN", "yue-Hans",
+  "yue-Hant-HK", "yue-Hant", "yue-HK", "yue", "zgh-MA", "zgh", "zh-CN",
+  "zh-Hans-CN", "zh-Hans-HK", "zh-Hans-MO", "zh-Hans-SG", "zh-Hans",
+  "zh-Hant-HK", "zh-Hant-MO", "zh-Hant-TW", "zh-Hant", "zh-HK", "zh-MO", "zh-SG",
+  "zh-TW", "zh", "zu", "zu-ZA"];
+
+// The test timeout in TSAN so we split into 9 different tests.
+// "Table 5: Components of date and time formats" as in
+// https://ecma-international.org/ecma-402/#sec-datetimeformat-abstracts
+let table5 = [
+  // ["weekday", ["narrow", "short", "long"]],
+  // ["era", ["narrow", "short", "long"]],
+  // ["year", ["2-digit", "numeric"]],
+  // ["month", ["2-digit", "numeric", "narrow", "short", "long"]],
+  ["day", ["2-digit", "numeric"]],
+  // ["hour", ["2-digit", "numeric"]],
+  // ["minute", ["2-digit", "numeric"]],
+  // ["second", ["2-digit", "numeric"]],
+  // ["timeZoneName", ["short", "long"]]
+];
+
+// Test each locale
+for (let loc of locales) {
+  // Test each property in Table 5
+  for (let row of table5) {
+    let prop = row[0];
+    let values = row[1];
+    // Test each value of the property
+    for (let value of values) {
+      let opt = {};
+      opt[prop] = value;
+      let dft = new Intl.DateTimeFormat([loc], opt);
+      let result = dft.resolvedOptions();
+      assertTrue(values.indexOf(result[prop]) >= 0,
+          "Expect new Intl.DateTimeFormat([" + loc + "], {" + prop + ": '" +
+          value + "'}).resolvedOptions()['" + prop + "'] to return one of [" +
+          values + "] but got '" + result[prop] + "'");
+    }
+  }
+}
diff --git a/implementation-contributed/v8/intl/regress-8413-era.js b/implementation-contributed/v8/intl/regress-8413-era.js
new file mode 100644
index 0000000000..7efbca8fc5
--- /dev/null
+++ b/implementation-contributed/v8/intl/regress-8413-era.js
@@ -0,0 +1,135 @@
+// 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.
+
+// All the known locales egrep by
+// find third_party/icu/source/data/locales/*.txt|cut -d: -f 1| \
+//     sort -u|cut -d/ -f6|cut -d. -f1|tr "_" "-"
+let locales = [
+  "af-NA", "af", "af-ZA", "agq-CM", "agq", "ak-GH", "ak", "am-ET", "am", "an",
+  "ar-001", "ar-AE", "ar-BH", "ar-DJ", "ar-DZ", "ar-EG", "ar-EH", "ar-ER",
+  "ar-IL", "ar-IQ", "ar-JO", "ar-KM", "ar-KW", "ar-LB", "ar-LY", "ar-MA",
+  "ar-MR", "ar-OM", "ar-PS", "ar-QA", "ar-SA", "ar-SD", "ar-SO", "ar-SS",
+  "ars", "ar-SY", "ar-TD", "ar-TN", "ar", "ar-YE", "asa", "asa-TZ", "as-IN",
+  "ast-ES", "ast", "as", "az-AZ", "az-Cyrl-AZ", "az-Cyrl", "az-Latn-AZ",
+  "az-Latn", "az", "bas-CM", "bas", "be-BY", "bem", "bem-ZM", "be", "bez",
+  "bez-TZ", "bg-BG", "bg", "bm-ML", "bm", "bn-BD", "bn-IN", "bn", "bo-CN",
+  "bo-IN", "bo", "br-FR", "br", "brx-IN", "brx", "bs-BA", "bs-Cyrl-BA",
+  "bs-Cyrl", "bs-Latn-BA", "bs-Latn", "bs", "ca-AD", "ca-ES", "ca-FR",
+  "ca-IT", "ca", "ccp-BD", "ccp-IN", "ccp", "ce-RU", "ce", "cgg", "cgg-UG",
+  "chr", "chr-US", "ckb-IQ", "ckb-IR", "ckb", "cs-CZ", "cs", "cy-GB", "cy",
+  "da-DK", "da-GL", "da", "dav-KE", "dav", "de-AT", "de-BE", "de-CH", "de-DE",
+  "de-IT", "de-LI", "de-LU", "de", "dje-NE", "dje", "dsb-DE", "dsb", "dua-CM",
+  "dua", "dyo-SN", "dyo", "dz-BT", "dz", "ebu-KE", "ebu", "ee-GH", "ee-TG",
+  "ee", "el-CY", "el-GR", "el", "en-001", "en-150", "en-AG", "en-AI", "en-AS",
+  "en-AT", "en-AU", "en-BB", "en-BE", "en-BI", "en-BM", "en-BS", "en-BW",
+  "en-BZ", "en-CA", "en-CC", "en-CH", "en-CK", "en-CM", "en-CX", "en-CY",
+  "en-DE", "en-DG", "en-DK", "en-DM", "en-ER", "en-FI", "en-FJ", "en-FK",
+  "en-FM", "en-GB", "en-GD", "en-GG", "en-GH", "en-GI", "en-GM", "en-GU",
+  "en-GY", "en-HK", "en-IE", "en-IL", "en-IM", "en-IN", "en-IO", "en-JE",
+  "en-JM", "en-KE", "en-KI", "en-KN", "en-KY", "en-LC", "en-LR", "en-LS",
+  "en-MG", "en-MH", "en-MO", "en-MP", "en-MS", "en-MT", "en-MU", "en-MW",
+  "en-MY", "en-NA", "en-NF", "en-NG", "en-NH", "en-NL", "en-NR", "en-NU",
+  "en-NZ", "en-PG", "en-PH", "en-PK", "en-PN", "en-PR", "en-PW", "en-RH",
+  "en-RW", "en-SB", "en-SC", "en-SD", "en-SE", "en-SG", "en-SH", "en-SI",
+  "en-SL", "en-SS", "en-SX", "en-SZ", "en-TC", "en-TK", "en-TO", "en-TT",
+  "en-TV", "en", "en-TZ", "en-UG", "en-UM", "en-US-POSIX", "en-US", "en-VC",
+  "en-VG", "en-VI", "en-VU", "en-WS", "en-ZA", "en-ZM", "en-ZW", "eo", "es-419",
+  "es-AR", "es-BO", "es-BR", "es-BZ", "es-CL", "es-CO", "es-CR", "es-CU",
+  "es-DO", "es-EA", "es-EC", "es-ES", "es-GQ", "es-GT", "es-HN", "es-IC",
+  "es-MX", "es-NI", "es-PA", "es-PE", "es-PH", "es-PR", "es-PY", "es-SV", "es",
+  "es-US", "es-UY", "es-VE", "et-EE", "et", "eu-ES", "eu", "ewo-CM", "ewo",
+  "fa-AF", "fa-IR", "fa", "ff", "fi-FI", "fil-PH", "fil", "fi", "fo-DK",
+  "fo-FO", "fo", "fr-BE", "fr-BF", "fr-BI", "fr-BJ", "fr-BL", "fr-CA", "fr-CD",
+  "fr-CF", "fr-CG", "fr-CH", "fr-CI", "fr-CM", "fr-DJ", "fr-DZ", "fr-FR",
+  "fr-GA", "fr-GF", "fr-GN", "fr-GP", "fr-GQ", "fr-HT", "fr-KM", "fr-LU",
+  "fr-MA", "fr-MC", "fr-MF", "fr-MG", "fr-ML", "fr-MQ", "fr-MR", "fr-MU",
+  "fr-NC", "fr-NE", "fr-PF", "fr-PM", "fr-RE", "fr-RW", "fr-SC", "fr-SN",
+  "fr-SY", "fr-TD", "fr-TG", "fr-TN", "fr", "fr-VU", "fr-WF", "fr-YT",
+  "fur-IT", "fur", "fy-NL", "fy", "ga-IE", "ga", "gd-GB", "gd", "gl-ES", "gl",
+  "gsw-CH", "gsw-FR", "gsw-LI", "gsw", "gu-IN", "gu", "guz-KE", "guz", "gv-IM",
+  "gv", "ha-GH", "ha-NE", "ha-NG", "ha", "haw", "haw-US", "he-IL", "he",
+  "hi-IN", "hi", "hr-BA", "hr-HR", "hr", "hsb-DE", "hsb", "hu-HU", "hu",
+  "hy-AM", "hy", "ia-001", "ia", "id-ID", "id", "ig-NG", "ig", "ii-CN", "ii",
+  "in-ID", "in", "is-IS", "is", "it-CH", "it-IT", "it-SM", "it", "it-VA",
+  "iw-IL", "iw", "ja-JP", "ja", "jgo-CM", "jgo", "jmc",
+  "jmc-TZ", "jv-ID", "jv", "kab-DZ", "kab", "ka-GE", "kam-KE", "kam", "ka",
+  "kde", "kde-TZ", "kea-CV", "kea", "khq-ML", "khq", "ki-KE", "ki", "kkj-CM",
+  "kkj", "kk-KZ", "kk", "kl-GL", "kln-KE", "kln", "kl", "km-KH", "km", "kn-IN",
+  "kn", "kok-IN", "ko-KP", "ko-KR", "kok", "ko", "ksb", "ksb-TZ", "ksf-CM",
+  "ksf", "ksh-DE", "ksh", "ks-IN", "ks", "ku-TR", "ku", "kw-GB", "kw", "ky-KG",
+  "ky", "lag", "lag-TZ", "lb-LU", "lb", "lg", "lg-UG", "lkt", "lkt-US", "ln-AO",
+  "ln-CD", "ln-CF", "ln-CG", "ln", "lo-LA", "lo", "lrc-IQ", "lrc-IR", "lrc",
+  "lt-LT", "lt", "lu-CD", "luo-KE", "luo", "lu", "luy-KE", "luy", "lv-LV", "lv",
+  "mas-KE", "mas", "mas-TZ", "mer-KE", "mer", "mfe-MU", "mfe", "mgh-MZ", "mgh",
+  "mg-MG", "mgo-CM", "mgo", "mg", "mi-NZ", "mi", "mk-MK", "mk", "ml-IN", "ml",
+  "mn-MN", "mn", "mo", "mr-IN", "mr", "ms-BN", "ms-MY", "ms-SG", "ms", "mt-MT",
+  "mt", "mua-CM", "mua", "my-MM", "my", "mzn-IR", "mzn", "naq-NA", "naq",
+  "nb-NO", "nb-SJ", "nb", "nds-DE", "nds-NL", "nds", "nd", "nd-ZW", "ne-IN",
+  "ne-NP", "ne", "nl-AW", "nl-BE", "nl-BQ", "nl-CW", "nl-NL", "nl-SR", "nl-SX",
+  "nl", "nmg-CM", "nmg", "nnh-CM", "nnh", "nn-NO", "nn", "no-NY", "no-NO",
+  "no", "nus-SS", "nus", "nyn", "nyn-UG", "om-ET", "om-KE", "om", "or-IN", "or",
+  "os-GE", "os-RU", "os", "pa-Arab-PK", "pa-Arab", "pa-Guru-IN", "pa-Guru",
+  "pa-IN", "pa-PK", "pa", "pl-PL", "pl", "ps-AF", "ps", "pt-AO", "pt-BR",
+  "pt-CH", "pt-CV", "pt-GQ", "pt-GW", "pt-LU", "pt-MO", "pt-MZ", "pt-PT",
+  "pt-ST", "pt-TL", "pt", "qu-BO", "qu-EC", "qu-PE", "qu", "rm-CH", "rm",
+  "rn-BI", "rn", "rof", "rof-TZ", "ro-MD", "root", "ro-RO", "ro", "ru-BY",
+  "ru-KG", "ru-KZ", "ru-MD", "ru-RU", "ru", "ru-UA", "rwk", "rwk-TZ", "rw-RW",
+  "rw", "sah-RU", "sah", "saq-KE", "saq", "sbp", "sbp-TZ", "sd-PK", "sd",
+  "se-FI", "seh-MZ", "seh", "se-NO", "se-SE", "ses-ML", "ses", "se", "sg-CF",
+  "sg", "sh-BA", "sh-CS", "shi-Latn-MA", "shi-Latn", "shi-MA", "shi-Tfng-MA",
+  "shi-Tfng", "shi", "sh", "sh-YU", "si-LK", "si", "sk-SK", "sk", "sl-SI", "sl",
+  "smn-FI", "smn", "sn", "sn-ZW", "so-DJ", "so-ET", "so-KE", "so-SO", "so",
+  "sq-AL", "sq-MK", "sq", "sq-XK", "sr-BA", "sr-CS", "sr-Cyrl-BA", "sr-Cyrl-CS",
+  "sr-Cyrl-ME", "sr-Cyrl-RS", "sr-Cyrl", "sr-Cyrl-XK", "sr-Cyrl-YU",
+  "sr-Latn-BA", "sr-Latn-CS", "sr-Latn-ME", "sr-Latn-RS", "sr-Latn",
+  "sr-Latn-XK", "sr-Latn-YU", "sr-ME", "sr-RS", "sr", "sr-XK", "sr-YU", "sv-AX",
+  "sv-FI", "sv-SE", "sv", "sw-CD", "sw-KE", "sw", "sw-TZ", "sw-UG", "ta-IN",
+  "ta-LK", "ta-MY", "ta-SG", "ta", "te-IN", "teo-KE", "teo", "teo-UG", "te",
+  "tg-TJ", "tg", "th-TH", "th", "ti-ER", "ti-ET", "ti",
+  "tk-TM", "tk", "tl-PH", "tl", "to-TO", "to", "tr-CY", "tr-TR", "tr", "tt-RU",
+  "tt", "twq-NE", "twq", "tzm-MA", "tzm", "ug-CN", "ug", "uk", "uk-UA", "ur-IN",
+  "ur-PK", "ur", "uz-AF", "uz-Arab-AF", "uz-Arab", "uz-Cyrl", "uz-Cyrl-UZ",
+  "uz-Latn", "uz-Latn-UZ", "uz", "uz-UZ", "vai-Latn-LR", "vai-Latn", "vai-LR",
+  "vai", "vai-Vaii-LR", "vai-Vaii", "vi", "vi-VN", "vun", "vun-TZ", "wae-CH",
+  "wae", "wa", "wo-SN", "wo", "xh", "xh-ZA", "xog", "xog-UG", "yav-CM", "yav",
+  "yi-001", "yi", "yo-BJ", "yo-NG", "yo", "yue-CN", "yue-Hans-CN", "yue-Hans",
+  "yue-Hant-HK", "yue-Hant", "yue-HK", "yue", "zgh-MA", "zgh", "zh-CN",
+  "zh-Hans-CN", "zh-Hans-HK", "zh-Hans-MO", "zh-Hans-SG", "zh-Hans",
+  "zh-Hant-HK", "zh-Hant-MO", "zh-Hant-TW", "zh-Hant", "zh-HK", "zh-MO", "zh-SG",
+  "zh-TW", "zh", "zu", "zu-ZA"];
+
+// The test timeout in TSAN so we split into 9 different tests.
+// "Table 5: Components of date and time formats" as in
+// https://ecma-international.org/ecma-402/#sec-datetimeformat-abstracts
+let table5 = [
+  // ["weekday", ["narrow", "short", "long"]],
+  ["era", ["narrow", "short", "long"]],
+  // ["year", ["2-digit", "numeric"]],
+  // ["month", ["2-digit", "numeric", "narrow", "short", "long"]],
+  // ["day", ["2-digit", "numeric"]],
+  // ["hour", ["2-digit", "numeric"]],
+  // ["minute", ["2-digit", "numeric"]],
+  // ["second", ["2-digit", "numeric"]],
+  // ["timeZoneName", ["short", "long"]]
+];
+
+// Test each locale
+for (let loc of locales) {
+  // Test each property in Table 5
+  for (let row of table5) {
+    let prop = row[0];
+    let values = row[1];
+    // Test each value of the property
+    for (let value of values) {
+      let opt = {};
+      opt[prop] = value;
+      let dft = new Intl.DateTimeFormat([loc], opt);
+      let result = dft.resolvedOptions();
+      assertTrue(values.indexOf(result[prop]) >= 0,
+          "Expect new Intl.DateTimeFormat([" + loc + "], {" + prop + ": '" +
+          value + "'}).resolvedOptions()['" + prop + "'] to return one of [" +
+          values + "] but got '" + result[prop] + "'");
+    }
+  }
+}
diff --git a/implementation-contributed/v8/intl/regress-8413-hour.js b/implementation-contributed/v8/intl/regress-8413-hour.js
new file mode 100644
index 0000000000..5b08ac2291
--- /dev/null
+++ b/implementation-contributed/v8/intl/regress-8413-hour.js
@@ -0,0 +1,135 @@
+// 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.
+
+// All the known locales egrep by
+// find third_party/icu/source/data/locales/*.txt|cut -d: -f 1| \
+//     sort -u|cut -d/ -f6|cut -d. -f1|tr "_" "-"
+let locales = [
+  "af-NA", "af", "af-ZA", "agq-CM", "agq", "ak-GH", "ak", "am-ET", "am", "an",
+  "ar-001", "ar-AE", "ar-BH", "ar-DJ", "ar-DZ", "ar-EG", "ar-EH", "ar-ER",
+  "ar-IL", "ar-IQ", "ar-JO", "ar-KM", "ar-KW", "ar-LB", "ar-LY", "ar-MA",
+  "ar-MR", "ar-OM", "ar-PS", "ar-QA", "ar-SA", "ar-SD", "ar-SO", "ar-SS",
+  "ars", "ar-SY", "ar-TD", "ar-TN", "ar", "ar-YE", "asa", "asa-TZ", "as-IN",
+  "ast-ES", "ast", "as", "az-AZ", "az-Cyrl-AZ", "az-Cyrl", "az-Latn-AZ",
+  "az-Latn", "az", "bas-CM", "bas", "be-BY", "bem", "bem-ZM", "be", "bez",
+  "bez-TZ", "bg-BG", "bg", "bm-ML", "bm", "bn-BD", "bn-IN", "bn", "bo-CN",
+  "bo-IN", "bo", "br-FR", "br", "brx-IN", "brx", "bs-BA", "bs-Cyrl-BA",
+  "bs-Cyrl", "bs-Latn-BA", "bs-Latn", "bs", "ca-AD", "ca-ES", "ca-FR",
+  "ca-IT", "ca", "ccp-BD", "ccp-IN", "ccp", "ce-RU", "ce", "cgg", "cgg-UG",
+  "chr", "chr-US", "ckb-IQ", "ckb-IR", "ckb", "cs-CZ", "cs", "cy-GB", "cy",
+  "da-DK", "da-GL", "da", "dav-KE", "dav", "de-AT", "de-BE", "de-CH", "de-DE",
+  "de-IT", "de-LI", "de-LU", "de", "dje-NE", "dje", "dsb-DE", "dsb", "dua-CM",
+  "dua", "dyo-SN", "dyo", "dz-BT", "dz", "ebu-KE", "ebu", "ee-GH", "ee-TG",
+  "ee", "el-CY", "el-GR", "el", "en-001", "en-150", "en-AG", "en-AI", "en-AS",
+  "en-AT", "en-AU", "en-BB", "en-BE", "en-BI", "en-BM", "en-BS", "en-BW",
+  "en-BZ", "en-CA", "en-CC", "en-CH", "en-CK", "en-CM", "en-CX", "en-CY",
+  "en-DE", "en-DG", "en-DK", "en-DM", "en-ER", "en-FI", "en-FJ", "en-FK",
+  "en-FM", "en-GB", "en-GD", "en-GG", "en-GH", "en-GI", "en-GM", "en-GU",
+  "en-GY", "en-HK", "en-IE", "en-IL", "en-IM", "en-IN", "en-IO", "en-JE",
+  "en-JM", "en-KE", "en-KI", "en-KN", "en-KY", "en-LC", "en-LR", "en-LS",
+  "en-MG", "en-MH", "en-MO", "en-MP", "en-MS", "en-MT", "en-MU", "en-MW",
+  "en-MY", "en-NA", "en-NF", "en-NG", "en-NH", "en-NL", "en-NR", "en-NU",
+  "en-NZ", "en-PG", "en-PH", "en-PK", "en-PN", "en-PR", "en-PW", "en-RH",
+  "en-RW", "en-SB", "en-SC", "en-SD", "en-SE", "en-SG", "en-SH", "en-SI",
+  "en-SL", "en-SS", "en-SX", "en-SZ", "en-TC", "en-TK", "en-TO", "en-TT",
+  "en-TV", "en", "en-TZ", "en-UG", "en-UM", "en-US-POSIX", "en-US", "en-VC",
+  "en-VG", "en-VI", "en-VU", "en-WS", "en-ZA", "en-ZM", "en-ZW", "eo", "es-419",
+  "es-AR", "es-BO", "es-BR", "es-BZ", "es-CL", "es-CO", "es-CR", "es-CU",
+  "es-DO", "es-EA", "es-EC", "es-ES", "es-GQ", "es-GT", "es-HN", "es-IC",
+  "es-MX", "es-NI", "es-PA", "es-PE", "es-PH", "es-PR", "es-PY", "es-SV", "es",
+  "es-US", "es-UY", "es-VE", "et-EE", "et", "eu-ES", "eu", "ewo-CM", "ewo",
+  "fa-AF", "fa-IR", "fa", "ff", "fi-FI", "fil-PH", "fil", "fi", "fo-DK",
+  "fo-FO", "fo", "fr-BE", "fr-BF", "fr-BI", "fr-BJ", "fr-BL", "fr-CA", "fr-CD",
+  "fr-CF", "fr-CG", "fr-CH", "fr-CI", "fr-CM", "fr-DJ", "fr-DZ", "fr-FR",
+  "fr-GA", "fr-GF", "fr-GN", "fr-GP", "fr-GQ", "fr-HT", "fr-KM", "fr-LU",
+  "fr-MA", "fr-MC", "fr-MF", "fr-MG", "fr-ML", "fr-MQ", "fr-MR", "fr-MU",
+  "fr-NC", "fr-NE", "fr-PF", "fr-PM", "fr-RE", "fr-RW", "fr-SC", "fr-SN",
+  "fr-SY", "fr-TD", "fr-TG", "fr-TN", "fr", "fr-VU", "fr-WF", "fr-YT",
+  "fur-IT", "fur", "fy-NL", "fy", "ga-IE", "ga", "gd-GB", "gd", "gl-ES", "gl",
+  "gsw-CH", "gsw-FR", "gsw-LI", "gsw", "gu-IN", "gu", "guz-KE", "guz", "gv-IM",
+  "gv", "ha-GH", "ha-NE", "ha-NG", "ha", "haw", "haw-US", "he-IL", "he",
+  "hi-IN", "hi", "hr-BA", "hr-HR", "hr", "hsb-DE", "hsb", "hu-HU", "hu",
+  "hy-AM", "hy", "ia-001", "ia", "id-ID", "id", "ig-NG", "ig", "ii-CN", "ii",
+  "in-ID", "in", "is-IS", "is", "it-CH", "it-IT", "it-SM", "it", "it-VA",
+  "iw-IL", "iw", "ja-JP", "ja", "jgo-CM", "jgo", "jmc",
+  "jmc-TZ", "jv-ID", "jv", "kab-DZ", "kab", "ka-GE", "kam-KE", "kam", "ka",
+  "kde", "kde-TZ", "kea-CV", "kea", "khq-ML", "khq", "ki-KE", "ki", "kkj-CM",
+  "kkj", "kk-KZ", "kk", "kl-GL", "kln-KE", "kln", "kl", "km-KH", "km", "kn-IN",
+  "kn", "kok-IN", "ko-KP", "ko-KR", "kok", "ko", "ksb", "ksb-TZ", "ksf-CM",
+  "ksf", "ksh-DE", "ksh", "ks-IN", "ks", "ku-TR", "ku", "kw-GB", "kw", "ky-KG",
+  "ky", "lag", "lag-TZ", "lb-LU", "lb", "lg", "lg-UG", "lkt", "lkt-US", "ln-AO",
+  "ln-CD", "ln-CF", "ln-CG", "ln", "lo-LA", "lo", "lrc-IQ", "lrc-IR", "lrc",
+  "lt-LT", "lt", "lu-CD", "luo-KE", "luo", "lu", "luy-KE", "luy", "lv-LV", "lv",
+  "mas-KE", "mas", "mas-TZ", "mer-KE", "mer", "mfe-MU", "mfe", "mgh-MZ", "mgh",
+  "mg-MG", "mgo-CM", "mgo", "mg", "mi-NZ", "mi", "mk-MK", "mk", "ml-IN", "ml",
+  "mn-MN", "mn", "mo", "mr-IN", "mr", "ms-BN", "ms-MY", "ms-SG", "ms", "mt-MT",
+  "mt", "mua-CM", "mua", "my-MM", "my", "mzn-IR", "mzn", "naq-NA", "naq",
+  "nb-NO", "nb-SJ", "nb", "nds-DE", "nds-NL", "nds", "nd", "nd-ZW", "ne-IN",
+  "ne-NP", "ne", "nl-AW", "nl-BE", "nl-BQ", "nl-CW", "nl-NL", "nl-SR", "nl-SX",
+  "nl", "nmg-CM", "nmg", "nnh-CM", "nnh", "nn-NO", "nn", "no-NY", "no-NO",
+  "no", "nus-SS", "nus", "nyn", "nyn-UG", "om-ET", "om-KE", "om", "or-IN", "or",
+  "os-GE", "os-RU", "os", "pa-Arab-PK", "pa-Arab", "pa-Guru-IN", "pa-Guru",
+  "pa-IN", "pa-PK", "pa", "pl-PL", "pl", "ps-AF", "ps", "pt-AO", "pt-BR",
+  "pt-CH", "pt-CV", "pt-GQ", "pt-GW", "pt-LU", "pt-MO", "pt-MZ", "pt-PT",
+  "pt-ST", "pt-TL", "pt", "qu-BO", "qu-EC", "qu-PE", "qu", "rm-CH", "rm",
+  "rn-BI", "rn", "rof", "rof-TZ", "ro-MD", "root", "ro-RO", "ro", "ru-BY",
+  "ru-KG", "ru-KZ", "ru-MD", "ru-RU", "ru", "ru-UA", "rwk", "rwk-TZ", "rw-RW",
+  "rw", "sah-RU", "sah", "saq-KE", "saq", "sbp", "sbp-TZ", "sd-PK", "sd",
+  "se-FI", "seh-MZ", "seh", "se-NO", "se-SE", "ses-ML", "ses", "se", "sg-CF",
+  "sg", "sh-BA", "sh-CS", "shi-Latn-MA", "shi-Latn", "shi-MA", "shi-Tfng-MA",
+  "shi-Tfng", "shi", "sh", "sh-YU", "si-LK", "si", "sk-SK", "sk", "sl-SI", "sl",
+  "smn-FI", "smn", "sn", "sn-ZW", "so-DJ", "so-ET", "so-KE", "so-SO", "so",
+  "sq-AL", "sq-MK", "sq", "sq-XK", "sr-BA", "sr-CS", "sr-Cyrl-BA", "sr-Cyrl-CS",
+  "sr-Cyrl-ME", "sr-Cyrl-RS", "sr-Cyrl", "sr-Cyrl-XK", "sr-Cyrl-YU",
+  "sr-Latn-BA", "sr-Latn-CS", "sr-Latn-ME", "sr-Latn-RS", "sr-Latn",
+  "sr-Latn-XK", "sr-Latn-YU", "sr-ME", "sr-RS", "sr", "sr-XK", "sr-YU", "sv-AX",
+  "sv-FI", "sv-SE", "sv", "sw-CD", "sw-KE", "sw", "sw-TZ", "sw-UG", "ta-IN",
+  "ta-LK", "ta-MY", "ta-SG", "ta", "te-IN", "teo-KE", "teo", "teo-UG", "te",
+  "tg-TJ", "tg", "th-TH", "th", "ti-ER", "ti-ET", "ti",
+  "tk-TM", "tk", "tl-PH", "tl", "to-TO", "to", "tr-CY", "tr-TR", "tr", "tt-RU",
+  "tt", "twq-NE", "twq", "tzm-MA", "tzm", "ug-CN", "ug", "uk", "uk-UA", "ur-IN",
+  "ur-PK", "ur", "uz-AF", "uz-Arab-AF", "uz-Arab", "uz-Cyrl", "uz-Cyrl-UZ",
+  "uz-Latn", "uz-Latn-UZ", "uz", "uz-UZ", "vai-Latn-LR", "vai-Latn", "vai-LR",
+  "vai", "vai-Vaii-LR", "vai-Vaii", "vi", "vi-VN", "vun", "vun-TZ", "wae-CH",
+  "wae", "wa", "wo-SN", "wo", "xh", "xh-ZA", "xog", "xog-UG", "yav-CM", "yav",
+  "yi-001", "yi", "yo-BJ", "yo-NG", "yo", "yue-CN", "yue-Hans-CN", "yue-Hans",
+  "yue-Hant-HK", "yue-Hant", "yue-HK", "yue", "zgh-MA", "zgh", "zh-CN",
+  "zh-Hans-CN", "zh-Hans-HK", "zh-Hans-MO", "zh-Hans-SG", "zh-Hans",
+  "zh-Hant-HK", "zh-Hant-MO", "zh-Hant-TW", "zh-Hant", "zh-HK", "zh-MO", "zh-SG",
+  "zh-TW", "zh", "zu", "zu-ZA"];
+
+// The test timeout in TSAN so we split into 9 different tests.
+// "Table 5: Components of date and time formats" as in
+// https://ecma-international.org/ecma-402/#sec-datetimeformat-abstracts
+let table5 = [
+  // ["weekday", ["narrow", "short", "long"]],
+  // ["era", ["narrow", "short", "long"]],
+  // ["year", ["2-digit", "numeric"]],
+  // ["month", ["2-digit", "numeric", "narrow", "short", "long"]],
+  // ["day", ["2-digit", "numeric"]],
+  ["hour", ["2-digit", "numeric"]],
+  // ["minute", ["2-digit", "numeric"]],
+  // ["second", ["2-digit", "numeric"]],
+  // ["timeZoneName", ["short", "long"]]
+];
+
+// Test each locale
+for (let loc of locales) {
+  // Test each property in Table 5
+  for (let row of table5) {
+    let prop = row[0];
+    let values = row[1];
+    // Test each value of the property
+    for (let value of values) {
+      let opt = {};
+      opt[prop] = value;
+      let dft = new Intl.DateTimeFormat([loc], opt);
+      let result = dft.resolvedOptions();
+      assertTrue(values.indexOf(result[prop]) >= 0,
+          "Expect new Intl.DateTimeFormat([" + loc + "], {" + prop + ": '" +
+          value + "'}).resolvedOptions()['" + prop + "'] to return one of [" +
+          values + "] but got '" + result[prop] + "'");
+    }
+  }
+}
diff --git a/implementation-contributed/v8/intl/regress-8413-minute.js b/implementation-contributed/v8/intl/regress-8413-minute.js
new file mode 100644
index 0000000000..3542319731
--- /dev/null
+++ b/implementation-contributed/v8/intl/regress-8413-minute.js
@@ -0,0 +1,135 @@
+// 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.
+
+// All the known locales egrep by
+// find third_party/icu/source/data/locales/*.txt|cut -d: -f 1| \
+//     sort -u|cut -d/ -f6|cut -d. -f1|tr "_" "-"
+let locales = [
+  "af-NA", "af", "af-ZA", "agq-CM", "agq", "ak-GH", "ak", "am-ET", "am", "an",
+  "ar-001", "ar-AE", "ar-BH", "ar-DJ", "ar-DZ", "ar-EG", "ar-EH", "ar-ER",
+  "ar-IL", "ar-IQ", "ar-JO", "ar-KM", "ar-KW", "ar-LB", "ar-LY", "ar-MA",
+  "ar-MR", "ar-OM", "ar-PS", "ar-QA", "ar-SA", "ar-SD", "ar-SO", "ar-SS",
+  "ars", "ar-SY", "ar-TD", "ar-TN", "ar", "ar-YE", "asa", "asa-TZ", "as-IN",
+  "ast-ES", "ast", "as", "az-AZ", "az-Cyrl-AZ", "az-Cyrl", "az-Latn-AZ",
+  "az-Latn", "az", "bas-CM", "bas", "be-BY", "bem", "bem-ZM", "be", "bez",
+  "bez-TZ", "bg-BG", "bg", "bm-ML", "bm", "bn-BD", "bn-IN", "bn", "bo-CN",
+  "bo-IN", "bo", "br-FR", "br", "brx-IN", "brx", "bs-BA", "bs-Cyrl-BA",
+  "bs-Cyrl", "bs-Latn-BA", "bs-Latn", "bs", "ca-AD", "ca-ES", "ca-FR",
+  "ca-IT", "ca", "ccp-BD", "ccp-IN", "ccp", "ce-RU", "ce", "cgg", "cgg-UG",
+  "chr", "chr-US", "ckb-IQ", "ckb-IR", "ckb", "cs-CZ", "cs", "cy-GB", "cy",
+  "da-DK", "da-GL", "da", "dav-KE", "dav", "de-AT", "de-BE", "de-CH", "de-DE",
+  "de-IT", "de-LI", "de-LU", "de", "dje-NE", "dje", "dsb-DE", "dsb", "dua-CM",
+  "dua", "dyo-SN", "dyo", "dz-BT", "dz", "ebu-KE", "ebu", "ee-GH", "ee-TG",
+  "ee", "el-CY", "el-GR", "el", "en-001", "en-150", "en-AG", "en-AI", "en-AS",
+  "en-AT", "en-AU", "en-BB", "en-BE", "en-BI", "en-BM", "en-BS", "en-BW",
+  "en-BZ", "en-CA", "en-CC", "en-CH", "en-CK", "en-CM", "en-CX", "en-CY",
+  "en-DE", "en-DG", "en-DK", "en-DM", "en-ER", "en-FI", "en-FJ", "en-FK",
+  "en-FM", "en-GB", "en-GD", "en-GG", "en-GH", "en-GI", "en-GM", "en-GU",
+  "en-GY", "en-HK", "en-IE", "en-IL", "en-IM", "en-IN", "en-IO", "en-JE",
+  "en-JM", "en-KE", "en-KI", "en-KN", "en-KY", "en-LC", "en-LR", "en-LS",
+  "en-MG", "en-MH", "en-MO", "en-MP", "en-MS", "en-MT", "en-MU", "en-MW",
+  "en-MY", "en-NA", "en-NF", "en-NG", "en-NH", "en-NL", "en-NR", "en-NU",
+  "en-NZ", "en-PG", "en-PH", "en-PK", "en-PN", "en-PR", "en-PW", "en-RH",
+  "en-RW", "en-SB", "en-SC", "en-SD", "en-SE", "en-SG", "en-SH", "en-SI",
+  "en-SL", "en-SS", "en-SX", "en-SZ", "en-TC", "en-TK", "en-TO", "en-TT",
+  "en-TV", "en", "en-TZ", "en-UG", "en-UM", "en-US-POSIX", "en-US", "en-VC",
+  "en-VG", "en-VI", "en-VU", "en-WS", "en-ZA", "en-ZM", "en-ZW", "eo", "es-419",
+  "es-AR", "es-BO", "es-BR", "es-BZ", "es-CL", "es-CO", "es-CR", "es-CU",
+  "es-DO", "es-EA", "es-EC", "es-ES", "es-GQ", "es-GT", "es-HN", "es-IC",
+  "es-MX", "es-NI", "es-PA", "es-PE", "es-PH", "es-PR", "es-PY", "es-SV", "es",
+  "es-US", "es-UY", "es-VE", "et-EE", "et", "eu-ES", "eu", "ewo-CM", "ewo",
+  "fa-AF", "fa-IR", "fa", "ff", "fi-FI", "fil-PH", "fil", "fi", "fo-DK",
+  "fo-FO", "fo", "fr-BE", "fr-BF", "fr-BI", "fr-BJ", "fr-BL", "fr-CA", "fr-CD",
+  "fr-CF", "fr-CG", "fr-CH", "fr-CI", "fr-CM", "fr-DJ", "fr-DZ", "fr-FR",
+  "fr-GA", "fr-GF", "fr-GN", "fr-GP", "fr-GQ", "fr-HT", "fr-KM", "fr-LU",
+  "fr-MA", "fr-MC", "fr-MF", "fr-MG", "fr-ML", "fr-MQ", "fr-MR", "fr-MU",
+  "fr-NC", "fr-NE", "fr-PF", "fr-PM", "fr-RE", "fr-RW", "fr-SC", "fr-SN",
+  "fr-SY", "fr-TD", "fr-TG", "fr-TN", "fr", "fr-VU", "fr-WF", "fr-YT",
+  "fur-IT", "fur", "fy-NL", "fy", "ga-IE", "ga", "gd-GB", "gd", "gl-ES", "gl",
+  "gsw-CH", "gsw-FR", "gsw-LI", "gsw", "gu-IN", "gu", "guz-KE", "guz", "gv-IM",
+  "gv", "ha-GH", "ha-NE", "ha-NG", "ha", "haw", "haw-US", "he-IL", "he",
+  "hi-IN", "hi", "hr-BA", "hr-HR", "hr", "hsb-DE", "hsb", "hu-HU", "hu",
+  "hy-AM", "hy", "ia-001", "ia", "id-ID", "id", "ig-NG", "ig", "ii-CN", "ii",
+  "in-ID", "in", "is-IS", "is", "it-CH", "it-IT", "it-SM", "it", "it-VA",
+  "iw-IL", "iw", "ja-JP", "ja", "jgo-CM", "jgo", "jmc",
+  "jmc-TZ", "jv-ID", "jv", "kab-DZ", "kab", "ka-GE", "kam-KE", "kam", "ka",
+  "kde", "kde-TZ", "kea-CV", "kea", "khq-ML", "khq", "ki-KE", "ki", "kkj-CM",
+  "kkj", "kk-KZ", "kk", "kl-GL", "kln-KE", "kln", "kl", "km-KH", "km", "kn-IN",
+  "kn", "kok-IN", "ko-KP", "ko-KR", "kok", "ko", "ksb", "ksb-TZ", "ksf-CM",
+  "ksf", "ksh-DE", "ksh", "ks-IN", "ks", "ku-TR", "ku", "kw-GB", "kw", "ky-KG",
+  "ky", "lag", "lag-TZ", "lb-LU", "lb", "lg", "lg-UG", "lkt", "lkt-US", "ln-AO",
+  "ln-CD", "ln-CF", "ln-CG", "ln", "lo-LA", "lo", "lrc-IQ", "lrc-IR", "lrc",
+  "lt-LT", "lt", "lu-CD", "luo-KE", "luo", "lu", "luy-KE", "luy", "lv-LV", "lv",
+  "mas-KE", "mas", "mas-TZ", "mer-KE", "mer", "mfe-MU", "mfe", "mgh-MZ", "mgh",
+  "mg-MG", "mgo-CM", "mgo", "mg", "mi-NZ", "mi", "mk-MK", "mk", "ml-IN", "ml",
+  "mn-MN", "mn", "mo", "mr-IN", "mr", "ms-BN", "ms-MY", "ms-SG", "ms", "mt-MT",
+  "mt", "mua-CM", "mua", "my-MM", "my", "mzn-IR", "mzn", "naq-NA", "naq",
+  "nb-NO", "nb-SJ", "nb", "nds-DE", "nds-NL", "nds", "nd", "nd-ZW", "ne-IN",
+  "ne-NP", "ne", "nl-AW", "nl-BE", "nl-BQ", "nl-CW", "nl-NL", "nl-SR", "nl-SX",
+  "nl", "nmg-CM", "nmg", "nnh-CM", "nnh", "nn-NO", "nn", "no-NY", "no-NO",
+  "no", "nus-SS", "nus", "nyn", "nyn-UG", "om-ET", "om-KE", "om", "or-IN", "or",
+  "os-GE", "os-RU", "os", "pa-Arab-PK", "pa-Arab", "pa-Guru-IN", "pa-Guru",
+  "pa-IN", "pa-PK", "pa", "pl-PL", "pl", "ps-AF", "ps", "pt-AO", "pt-BR",
+  "pt-CH", "pt-CV", "pt-GQ", "pt-GW", "pt-LU", "pt-MO", "pt-MZ", "pt-PT",
+  "pt-ST", "pt-TL", "pt", "qu-BO", "qu-EC", "qu-PE", "qu", "rm-CH", "rm",
+  "rn-BI", "rn", "rof", "rof-TZ", "ro-MD", "root", "ro-RO", "ro", "ru-BY",
+  "ru-KG", "ru-KZ", "ru-MD", "ru-RU", "ru", "ru-UA", "rwk", "rwk-TZ", "rw-RW",
+  "rw", "sah-RU", "sah", "saq-KE", "saq", "sbp", "sbp-TZ", "sd-PK", "sd",
+  "se-FI", "seh-MZ", "seh", "se-NO", "se-SE", "ses-ML", "ses", "se", "sg-CF",
+  "sg", "sh-BA", "sh-CS", "shi-Latn-MA", "shi-Latn", "shi-MA", "shi-Tfng-MA",
+  "shi-Tfng", "shi", "sh", "sh-YU", "si-LK", "si", "sk-SK", "sk", "sl-SI", "sl",
+  "smn-FI", "smn", "sn", "sn-ZW", "so-DJ", "so-ET", "so-KE", "so-SO", "so",
+  "sq-AL", "sq-MK", "sq", "sq-XK", "sr-BA", "sr-CS", "sr-Cyrl-BA", "sr-Cyrl-CS",
+  "sr-Cyrl-ME", "sr-Cyrl-RS", "sr-Cyrl", "sr-Cyrl-XK", "sr-Cyrl-YU",
+  "sr-Latn-BA", "sr-Latn-CS", "sr-Latn-ME", "sr-Latn-RS", "sr-Latn",
+  "sr-Latn-XK", "sr-Latn-YU", "sr-ME", "sr-RS", "sr", "sr-XK", "sr-YU", "sv-AX",
+  "sv-FI", "sv-SE", "sv", "sw-CD", "sw-KE", "sw", "sw-TZ", "sw-UG", "ta-IN",
+  "ta-LK", "ta-MY", "ta-SG", "ta", "te-IN", "teo-KE", "teo", "teo-UG", "te",
+  "tg-TJ", "tg", "th-TH", "th", "ti-ER", "ti-ET", "ti",
+  "tk-TM", "tk", "tl-PH", "tl", "to-TO", "to", "tr-CY", "tr-TR", "tr", "tt-RU",
+  "tt", "twq-NE", "twq", "tzm-MA", "tzm", "ug-CN", "ug", "uk", "uk-UA", "ur-IN",
+  "ur-PK", "ur", "uz-AF", "uz-Arab-AF", "uz-Arab", "uz-Cyrl", "uz-Cyrl-UZ",
+  "uz-Latn", "uz-Latn-UZ", "uz", "uz-UZ", "vai-Latn-LR", "vai-Latn", "vai-LR",
+  "vai", "vai-Vaii-LR", "vai-Vaii", "vi", "vi-VN", "vun", "vun-TZ", "wae-CH",
+  "wae", "wa", "wo-SN", "wo", "xh", "xh-ZA", "xog", "xog-UG", "yav-CM", "yav",
+  "yi-001", "yi", "yo-BJ", "yo-NG", "yo", "yue-CN", "yue-Hans-CN", "yue-Hans",
+  "yue-Hant-HK", "yue-Hant", "yue-HK", "yue", "zgh-MA", "zgh", "zh-CN",
+  "zh-Hans-CN", "zh-Hans-HK", "zh-Hans-MO", "zh-Hans-SG", "zh-Hans",
+  "zh-Hant-HK", "zh-Hant-MO", "zh-Hant-TW", "zh-Hant", "zh-HK", "zh-MO", "zh-SG",
+  "zh-TW", "zh", "zu", "zu-ZA"];
+
+// The test timeout in TSAN so we split into 9 different tests.
+// "Table 5: Components of date and time formats" as in
+// https://ecma-international.org/ecma-402/#sec-datetimeformat-abstracts
+let table5 = [
+  // ["weekday", ["narrow", "short", "long"]],
+  // ["era", ["narrow", "short", "long"]],
+  // ["year", ["2-digit", "numeric"]],
+  // ["month", ["2-digit", "numeric", "narrow", "short", "long"]],
+  // ["day", ["2-digit", "numeric"]],
+  // ["hour", ["2-digit", "numeric"]],
+  ["minute", ["2-digit", "numeric"]],
+  // ["second", ["2-digit", "numeric"]],
+  // ["timeZoneName", ["short", "long"]]
+];
+
+// Test each locale
+for (let loc of locales) {
+  // Test each property in Table 5
+  for (let row of table5) {
+    let prop = row[0];
+    let values = row[1];
+    // Test each value of the property
+    for (let value of values) {
+      let opt = {};
+      opt[prop] = value;
+      let dft = new Intl.DateTimeFormat([loc], opt);
+      let result = dft.resolvedOptions();
+      assertTrue(values.indexOf(result[prop]) >= 0,
+          "Expect new Intl.DateTimeFormat([" + loc + "], {" + prop + ": '" +
+          value + "'}).resolvedOptions()['" + prop + "'] to return one of [" +
+          values + "] but got '" + result[prop] + "'");
+    }
+  }
+}
diff --git a/implementation-contributed/v8/intl/regress-8413-month.js b/implementation-contributed/v8/intl/regress-8413-month.js
new file mode 100644
index 0000000000..530745b555
--- /dev/null
+++ b/implementation-contributed/v8/intl/regress-8413-month.js
@@ -0,0 +1,135 @@
+// 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.
+
+// All the known locales egrep by
+// find third_party/icu/source/data/locales/*.txt|cut -d: -f 1| \
+//     sort -u|cut -d/ -f6|cut -d. -f1|tr "_" "-"
+let locales = [
+  "af-NA", "af", "af-ZA", "agq-CM", "agq", "ak-GH", "ak", "am-ET", "am", "an",
+  "ar-001", "ar-AE", "ar-BH", "ar-DJ", "ar-DZ", "ar-EG", "ar-EH", "ar-ER",
+  "ar-IL", "ar-IQ", "ar-JO", "ar-KM", "ar-KW", "ar-LB", "ar-LY", "ar-MA",
+  "ar-MR", "ar-OM", "ar-PS", "ar-QA", "ar-SA", "ar-SD", "ar-SO", "ar-SS",
+  "ars", "ar-SY", "ar-TD", "ar-TN", "ar", "ar-YE", "asa", "asa-TZ", "as-IN",
+  "ast-ES", "ast", "as", "az-AZ", "az-Cyrl-AZ", "az-Cyrl", "az-Latn-AZ",
+  "az-Latn", "az", "bas-CM", "bas", "be-BY", "bem", "bem-ZM", "be", "bez",
+  "bez-TZ", "bg-BG", "bg", "bm-ML", "bm", "bn-BD", "bn-IN", "bn", "bo-CN",
+  "bo-IN", "bo", "br-FR", "br", "brx-IN", "brx", "bs-BA", "bs-Cyrl-BA",
+  "bs-Cyrl", "bs-Latn-BA", "bs-Latn", "bs", "ca-AD", "ca-ES", "ca-FR",
+  "ca-IT", "ca", "ccp-BD", "ccp-IN", "ccp", "ce-RU", "ce", "cgg", "cgg-UG",
+  "chr", "chr-US", "ckb-IQ", "ckb-IR", "ckb", "cs-CZ", "cs", "cy-GB", "cy",
+  "da-DK", "da-GL", "da", "dav-KE", "dav", "de-AT", "de-BE", "de-CH", "de-DE",
+  "de-IT", "de-LI", "de-LU", "de", "dje-NE", "dje", "dsb-DE", "dsb", "dua-CM",
+  "dua", "dyo-SN", "dyo", "dz-BT", "dz", "ebu-KE", "ebu", "ee-GH", "ee-TG",
+  "ee", "el-CY", "el-GR", "el", "en-001", "en-150", "en-AG", "en-AI", "en-AS",
+  "en-AT", "en-AU", "en-BB", "en-BE", "en-BI", "en-BM", "en-BS", "en-BW",
+  "en-BZ", "en-CA", "en-CC", "en-CH", "en-CK", "en-CM", "en-CX", "en-CY",
+  "en-DE", "en-DG", "en-DK", "en-DM", "en-ER", "en-FI", "en-FJ", "en-FK",
+  "en-FM", "en-GB", "en-GD", "en-GG", "en-GH", "en-GI", "en-GM", "en-GU",
+  "en-GY", "en-HK", "en-IE", "en-IL", "en-IM", "en-IN", "en-IO", "en-JE",
+  "en-JM", "en-KE", "en-KI", "en-KN", "en-KY", "en-LC", "en-LR", "en-LS",
+  "en-MG", "en-MH", "en-MO", "en-MP", "en-MS", "en-MT", "en-MU", "en-MW",
+  "en-MY", "en-NA", "en-NF", "en-NG", "en-NH", "en-NL", "en-NR", "en-NU",
+  "en-NZ", "en-PG", "en-PH", "en-PK", "en-PN", "en-PR", "en-PW", "en-RH",
+  "en-RW", "en-SB", "en-SC", "en-SD", "en-SE", "en-SG", "en-SH", "en-SI",
+  "en-SL", "en-SS", "en-SX", "en-SZ", "en-TC", "en-TK", "en-TO", "en-TT",
+  "en-TV", "en", "en-TZ", "en-UG", "en-UM", "en-US-POSIX", "en-US", "en-VC",
+  "en-VG", "en-VI", "en-VU", "en-WS", "en-ZA", "en-ZM", "en-ZW", "eo", "es-419",
+  "es-AR", "es-BO", "es-BR", "es-BZ", "es-CL", "es-CO", "es-CR", "es-CU",
+  "es-DO", "es-EA", "es-EC", "es-ES", "es-GQ", "es-GT", "es-HN", "es-IC",
+  "es-MX", "es-NI", "es-PA", "es-PE", "es-PH", "es-PR", "es-PY", "es-SV", "es",
+  "es-US", "es-UY", "es-VE", "et-EE", "et", "eu-ES", "eu", "ewo-CM", "ewo",
+  "fa-AF", "fa-IR", "fa", "ff", "fi-FI", "fil-PH", "fil", "fi", "fo-DK",
+  "fo-FO", "fo", "fr-BE", "fr-BF", "fr-BI", "fr-BJ", "fr-BL", "fr-CA", "fr-CD",
+  "fr-CF", "fr-CG", "fr-CH", "fr-CI", "fr-CM", "fr-DJ", "fr-DZ", "fr-FR",
+  "fr-GA", "fr-GF", "fr-GN", "fr-GP", "fr-GQ", "fr-HT", "fr-KM", "fr-LU",
+  "fr-MA", "fr-MC", "fr-MF", "fr-MG", "fr-ML", "fr-MQ", "fr-MR", "fr-MU",
+  "fr-NC", "fr-NE", "fr-PF", "fr-PM", "fr-RE", "fr-RW", "fr-SC", "fr-SN",
+  "fr-SY", "fr-TD", "fr-TG", "fr-TN", "fr", "fr-VU", "fr-WF", "fr-YT",
+  "fur-IT", "fur", "fy-NL", "fy", "ga-IE", "ga", "gd-GB", "gd", "gl-ES", "gl",
+  "gsw-CH", "gsw-FR", "gsw-LI", "gsw", "gu-IN", "gu", "guz-KE", "guz", "gv-IM",
+  "gv", "ha-GH", "ha-NE", "ha-NG", "ha", "haw", "haw-US", "he-IL", "he",
+  "hi-IN", "hi", "hr-BA", "hr-HR", "hr", "hsb-DE", "hsb", "hu-HU", "hu",
+  "hy-AM", "hy", "ia-001", "ia", "id-ID", "id", "ig-NG", "ig", "ii-CN", "ii",
+  "in-ID", "in", "is-IS", "is", "it-CH", "it-IT", "it-SM", "it", "it-VA",
+  "iw-IL", "iw", "ja-JP", "ja", "jgo-CM", "jgo", "jmc",
+  "jmc-TZ", "jv-ID", "jv", "kab-DZ", "kab", "ka-GE", "kam-KE", "kam", "ka",
+  "kde", "kde-TZ", "kea-CV", "kea", "khq-ML", "khq", "ki-KE", "ki", "kkj-CM",
+  "kkj", "kk-KZ", "kk", "kl-GL", "kln-KE", "kln", "kl", "km-KH", "km", "kn-IN",
+  "kn", "kok-IN", "ko-KP", "ko-KR", "kok", "ko", "ksb", "ksb-TZ", "ksf-CM",
+  "ksf", "ksh-DE", "ksh", "ks-IN", "ks", "ku-TR", "ku", "kw-GB", "kw", "ky-KG",
+  "ky", "lag", "lag-TZ", "lb-LU", "lb", "lg", "lg-UG", "lkt", "lkt-US", "ln-AO",
+  "ln-CD", "ln-CF", "ln-CG", "ln", "lo-LA", "lo", "lrc-IQ", "lrc-IR", "lrc",
+  "lt-LT", "lt", "lu-CD", "luo-KE", "luo", "lu", "luy-KE", "luy", "lv-LV", "lv",
+  "mas-KE", "mas", "mas-TZ", "mer-KE", "mer", "mfe-MU", "mfe", "mgh-MZ", "mgh",
+  "mg-MG", "mgo-CM", "mgo", "mg", "mi-NZ", "mi", "mk-MK", "mk", "ml-IN", "ml",
+  "mn-MN", "mn", "mo", "mr-IN", "mr", "ms-BN", "ms-MY", "ms-SG", "ms", "mt-MT",
+  "mt", "mua-CM", "mua", "my-MM", "my", "mzn-IR", "mzn", "naq-NA", "naq",
+  "nb-NO", "nb-SJ", "nb", "nds-DE", "nds-NL", "nds", "nd", "nd-ZW", "ne-IN",
+  "ne-NP", "ne", "nl-AW", "nl-BE", "nl-BQ", "nl-CW", "nl-NL", "nl-SR", "nl-SX",
+  "nl", "nmg-CM", "nmg", "nnh-CM", "nnh", "nn-NO", "nn", "no-NY", "no-NO",
+  "no", "nus-SS", "nus", "nyn", "nyn-UG", "om-ET", "om-KE", "om", "or-IN", "or",
+  "os-GE", "os-RU", "os", "pa-Arab-PK", "pa-Arab", "pa-Guru-IN", "pa-Guru",
+  "pa-IN", "pa-PK", "pa", "pl-PL", "pl", "ps-AF", "ps", "pt-AO", "pt-BR",
+  "pt-CH", "pt-CV", "pt-GQ", "pt-GW", "pt-LU", "pt-MO", "pt-MZ", "pt-PT",
+  "pt-ST", "pt-TL", "pt", "qu-BO", "qu-EC", "qu-PE", "qu", "rm-CH", "rm",
+  "rn-BI", "rn", "rof", "rof-TZ", "ro-MD", "root", "ro-RO", "ro", "ru-BY",
+  "ru-KG", "ru-KZ", "ru-MD", "ru-RU", "ru", "ru-UA", "rwk", "rwk-TZ", "rw-RW",
+  "rw", "sah-RU", "sah", "saq-KE", "saq", "sbp", "sbp-TZ", "sd-PK", "sd",
+  "se-FI", "seh-MZ", "seh", "se-NO", "se-SE", "ses-ML", "ses", "se", "sg-CF",
+  "sg", "sh-BA", "sh-CS", "shi-Latn-MA", "shi-Latn", "shi-MA", "shi-Tfng-MA",
+  "shi-Tfng", "shi", "sh", "sh-YU", "si-LK", "si", "sk-SK", "sk", "sl-SI", "sl",
+  "smn-FI", "smn", "sn", "sn-ZW", "so-DJ", "so-ET", "so-KE", "so-SO", "so",
+  "sq-AL", "sq-MK", "sq", "sq-XK", "sr-BA", "sr-CS", "sr-Cyrl-BA", "sr-Cyrl-CS",
+  "sr-Cyrl-ME", "sr-Cyrl-RS", "sr-Cyrl", "sr-Cyrl-XK", "sr-Cyrl-YU",
+  "sr-Latn-BA", "sr-Latn-CS", "sr-Latn-ME", "sr-Latn-RS", "sr-Latn",
+  "sr-Latn-XK", "sr-Latn-YU", "sr-ME", "sr-RS", "sr", "sr-XK", "sr-YU", "sv-AX",
+  "sv-FI", "sv-SE", "sv", "sw-CD", "sw-KE", "sw", "sw-TZ", "sw-UG", "ta-IN",
+  "ta-LK", "ta-MY", "ta-SG", "ta", "te-IN", "teo-KE", "teo", "teo-UG", "te",
+  "tg-TJ", "tg", "th-TH", "th", "ti-ER", "ti-ET", "ti",
+  "tk-TM", "tk", "tl-PH", "tl", "to-TO", "to", "tr-CY", "tr-TR", "tr", "tt-RU",
+  "tt", "twq-NE", "twq", "tzm-MA", "tzm", "ug-CN", "ug", "uk", "uk-UA", "ur-IN",
+  "ur-PK", "ur", "uz-AF", "uz-Arab-AF", "uz-Arab", "uz-Cyrl", "uz-Cyrl-UZ",
+  "uz-Latn", "uz-Latn-UZ", "uz", "uz-UZ", "vai-Latn-LR", "vai-Latn", "vai-LR",
+  "vai", "vai-Vaii-LR", "vai-Vaii", "vi", "vi-VN", "vun", "vun-TZ", "wae-CH",
+  "wae", "wa", "wo-SN", "wo", "xh", "xh-ZA", "xog", "xog-UG", "yav-CM", "yav",
+  "yi-001", "yi", "yo-BJ", "yo-NG", "yo", "yue-CN", "yue-Hans-CN", "yue-Hans",
+  "yue-Hant-HK", "yue-Hant", "yue-HK", "yue", "zgh-MA", "zgh", "zh-CN",
+  "zh-Hans-CN", "zh-Hans-HK", "zh-Hans-MO", "zh-Hans-SG", "zh-Hans",
+  "zh-Hant-HK", "zh-Hant-MO", "zh-Hant-TW", "zh-Hant", "zh-HK", "zh-MO", "zh-SG",
+  "zh-TW", "zh", "zu", "zu-ZA"];
+
+// The test timeout in TSAN so we split into 9 different tests.
+// "Table 5: Components of date and time formats" as in
+// https://ecma-international.org/ecma-402/#sec-datetimeformat-abstracts
+let table5 = [
+  // ["weekday", ["narrow", "short", "long"]],
+  // ["era", ["narrow", "short", "long"]],
+  // ["year", ["2-digit", "numeric"]],
+  ["month", ["2-digit", "numeric", "narrow", "short", "long"]],
+  // ["day", ["2-digit", "numeric"]],
+  // ["hour", ["2-digit", "numeric"]],
+  // ["minute", ["2-digit", "numeric"]],
+  // ["second", ["2-digit", "numeric"]],
+  // ["timeZoneName", ["short", "long"]]
+];
+
+// Test each locale
+for (let loc of locales) {
+  // Test each property in Table 5
+  for (let row of table5) {
+    let prop = row[0];
+    let values = row[1];
+    // Test each value of the property
+    for (let value of values) {
+      let opt = {};
+      opt[prop] = value;
+      let dft = new Intl.DateTimeFormat([loc], opt);
+      let result = dft.resolvedOptions();
+      assertTrue(values.indexOf(result[prop]) >= 0,
+          "Expect new Intl.DateTimeFormat([" + loc + "], {" + prop + ": '" +
+          value + "'}).resolvedOptions()['" + prop + "'] to return one of [" +
+          values + "] but got '" + result[prop] + "'");
+    }
+  }
+}
diff --git a/implementation-contributed/v8/intl/regress-8413-second.js b/implementation-contributed/v8/intl/regress-8413-second.js
new file mode 100644
index 0000000000..37aaefbfee
--- /dev/null
+++ b/implementation-contributed/v8/intl/regress-8413-second.js
@@ -0,0 +1,135 @@
+// 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.
+
+// All the known locales egrep by
+// find third_party/icu/source/data/locales/*.txt|cut -d: -f 1| \
+//     sort -u|cut -d/ -f6|cut -d. -f1|tr "_" "-"
+let locales = [
+  "af-NA", "af", "af-ZA", "agq-CM", "agq", "ak-GH", "ak", "am-ET", "am", "an",
+  "ar-001", "ar-AE", "ar-BH", "ar-DJ", "ar-DZ", "ar-EG", "ar-EH", "ar-ER",
+  "ar-IL", "ar-IQ", "ar-JO", "ar-KM", "ar-KW", "ar-LB", "ar-LY", "ar-MA",
+  "ar-MR", "ar-OM", "ar-PS", "ar-QA", "ar-SA", "ar-SD", "ar-SO", "ar-SS",
+  "ars", "ar-SY", "ar-TD", "ar-TN", "ar", "ar-YE", "asa", "asa-TZ", "as-IN",
+  "ast-ES", "ast", "as", "az-AZ", "az-Cyrl-AZ", "az-Cyrl", "az-Latn-AZ",
+  "az-Latn", "az", "bas-CM", "bas", "be-BY", "bem", "bem-ZM", "be", "bez",
+  "bez-TZ", "bg-BG", "bg", "bm-ML", "bm", "bn-BD", "bn-IN", "bn", "bo-CN",
+  "bo-IN", "bo", "br-FR", "br", "brx-IN", "brx", "bs-BA", "bs-Cyrl-BA",
+  "bs-Cyrl", "bs-Latn-BA", "bs-Latn", "bs", "ca-AD", "ca-ES", "ca-FR",
+  "ca-IT", "ca", "ccp-BD", "ccp-IN", "ccp", "ce-RU", "ce", "cgg", "cgg-UG",
+  "chr", "chr-US", "ckb-IQ", "ckb-IR", "ckb", "cs-CZ", "cs", "cy-GB", "cy",
+  "da-DK", "da-GL", "da", "dav-KE", "dav", "de-AT", "de-BE", "de-CH", "de-DE",
+  "de-IT", "de-LI", "de-LU", "de", "dje-NE", "dje", "dsb-DE", "dsb", "dua-CM",
+  "dua", "dyo-SN", "dyo", "dz-BT", "dz", "ebu-KE", "ebu", "ee-GH", "ee-TG",
+  "ee", "el-CY", "el-GR", "el", "en-001", "en-150", "en-AG", "en-AI", "en-AS",
+  "en-AT", "en-AU", "en-BB", "en-BE", "en-BI", "en-BM", "en-BS", "en-BW",
+  "en-BZ", "en-CA", "en-CC", "en-CH", "en-CK", "en-CM", "en-CX", "en-CY",
+  "en-DE", "en-DG", "en-DK", "en-DM", "en-ER", "en-FI", "en-FJ", "en-FK",
+  "en-FM", "en-GB", "en-GD", "en-GG", "en-GH", "en-GI", "en-GM", "en-GU",
+  "en-GY", "en-HK", "en-IE", "en-IL", "en-IM", "en-IN", "en-IO", "en-JE",
+  "en-JM", "en-KE", "en-KI", "en-KN", "en-KY", "en-LC", "en-LR", "en-LS",
+  "en-MG", "en-MH", "en-MO", "en-MP", "en-MS", "en-MT", "en-MU", "en-MW",
+  "en-MY", "en-NA", "en-NF", "en-NG", "en-NH", "en-NL", "en-NR", "en-NU",
+  "en-NZ", "en-PG", "en-PH", "en-PK", "en-PN", "en-PR", "en-PW", "en-RH",
+  "en-RW", "en-SB", "en-SC", "en-SD", "en-SE", "en-SG", "en-SH", "en-SI",
+  "en-SL", "en-SS", "en-SX", "en-SZ", "en-TC", "en-TK", "en-TO", "en-TT",
+  "en-TV", "en", "en-TZ", "en-UG", "en-UM", "en-US-POSIX", "en-US", "en-VC",
+  "en-VG", "en-VI", "en-VU", "en-WS", "en-ZA", "en-ZM", "en-ZW", "eo", "es-419",
+  "es-AR", "es-BO", "es-BR", "es-BZ", "es-CL", "es-CO", "es-CR", "es-CU",
+  "es-DO", "es-EA", "es-EC", "es-ES", "es-GQ", "es-GT", "es-HN", "es-IC",
+  "es-MX", "es-NI", "es-PA", "es-PE", "es-PH", "es-PR", "es-PY", "es-SV", "es",
+  "es-US", "es-UY", "es-VE", "et-EE", "et", "eu-ES", "eu", "ewo-CM", "ewo",
+  "fa-AF", "fa-IR", "fa", "ff", "fi-FI", "fil-PH", "fil", "fi", "fo-DK",
+  "fo-FO", "fo", "fr-BE", "fr-BF", "fr-BI", "fr-BJ", "fr-BL", "fr-CA", "fr-CD",
+  "fr-CF", "fr-CG", "fr-CH", "fr-CI", "fr-CM", "fr-DJ", "fr-DZ", "fr-FR",
+  "fr-GA", "fr-GF", "fr-GN", "fr-GP", "fr-GQ", "fr-HT", "fr-KM", "fr-LU",
+  "fr-MA", "fr-MC", "fr-MF", "fr-MG", "fr-ML", "fr-MQ", "fr-MR", "fr-MU",
+  "fr-NC", "fr-NE", "fr-PF", "fr-PM", "fr-RE", "fr-RW", "fr-SC", "fr-SN",
+  "fr-SY", "fr-TD", "fr-TG", "fr-TN", "fr", "fr-VU", "fr-WF", "fr-YT",
+  "fur-IT", "fur", "fy-NL", "fy", "ga-IE", "ga", "gd-GB", "gd", "gl-ES", "gl",
+  "gsw-CH", "gsw-FR", "gsw-LI", "gsw", "gu-IN", "gu", "guz-KE", "guz", "gv-IM",
+  "gv", "ha-GH", "ha-NE", "ha-NG", "ha", "haw", "haw-US", "he-IL", "he",
+  "hi-IN", "hi", "hr-BA", "hr-HR", "hr", "hsb-DE", "hsb", "hu-HU", "hu",
+  "hy-AM", "hy", "ia-001", "ia", "id-ID", "id", "ig-NG", "ig", "ii-CN", "ii",
+  "in-ID", "in", "is-IS", "is", "it-CH", "it-IT", "it-SM", "it", "it-VA",
+  "iw-IL", "iw", "ja-JP", "ja", "jgo-CM", "jgo", "jmc",
+  "jmc-TZ", "jv-ID", "jv", "kab-DZ", "kab", "ka-GE", "kam-KE", "kam", "ka",
+  "kde", "kde-TZ", "kea-CV", "kea", "khq-ML", "khq", "ki-KE", "ki", "kkj-CM",
+  "kkj", "kk-KZ", "kk", "kl-GL", "kln-KE", "kln", "kl", "km-KH", "km", "kn-IN",
+  "kn", "kok-IN", "ko-KP", "ko-KR", "kok", "ko", "ksb", "ksb-TZ", "ksf-CM",
+  "ksf", "ksh-DE", "ksh", "ks-IN", "ks", "ku-TR", "ku", "kw-GB", "kw", "ky-KG",
+  "ky", "lag", "lag-TZ", "lb-LU", "lb", "lg", "lg-UG", "lkt", "lkt-US", "ln-AO",
+  "ln-CD", "ln-CF", "ln-CG", "ln", "lo-LA", "lo", "lrc-IQ", "lrc-IR", "lrc",
+  "lt-LT", "lt", "lu-CD", "luo-KE", "luo", "lu", "luy-KE", "luy", "lv-LV", "lv",
+  "mas-KE", "mas", "mas-TZ", "mer-KE", "mer", "mfe-MU", "mfe", "mgh-MZ", "mgh",
+  "mg-MG", "mgo-CM", "mgo", "mg", "mi-NZ", "mi", "mk-MK", "mk", "ml-IN", "ml",
+  "mn-MN", "mn", "mo", "mr-IN", "mr", "ms-BN", "ms-MY", "ms-SG", "ms", "mt-MT",
+  "mt", "mua-CM", "mua", "my-MM", "my", "mzn-IR", "mzn", "naq-NA", "naq",
+  "nb-NO", "nb-SJ", "nb", "nds-DE", "nds-NL", "nds", "nd", "nd-ZW", "ne-IN",
+  "ne-NP", "ne", "nl-AW", "nl-BE", "nl-BQ", "nl-CW", "nl-NL", "nl-SR", "nl-SX",
+  "nl", "nmg-CM", "nmg", "nnh-CM", "nnh", "nn-NO", "nn", "no-NY", "no-NO",
+  "no", "nus-SS", "nus", "nyn", "nyn-UG", "om-ET", "om-KE", "om", "or-IN", "or",
+  "os-GE", "os-RU", "os", "pa-Arab-PK", "pa-Arab", "pa-Guru-IN", "pa-Guru",
+  "pa-IN", "pa-PK", "pa", "pl-PL", "pl", "ps-AF", "ps", "pt-AO", "pt-BR",
+  "pt-CH", "pt-CV", "pt-GQ", "pt-GW", "pt-LU", "pt-MO", "pt-MZ", "pt-PT",
+  "pt-ST", "pt-TL", "pt", "qu-BO", "qu-EC", "qu-PE", "qu", "rm-CH", "rm",
+  "rn-BI", "rn", "rof", "rof-TZ", "ro-MD", "root", "ro-RO", "ro", "ru-BY",
+  "ru-KG", "ru-KZ", "ru-MD", "ru-RU", "ru", "ru-UA", "rwk", "rwk-TZ", "rw-RW",
+  "rw", "sah-RU", "sah", "saq-KE", "saq", "sbp", "sbp-TZ", "sd-PK", "sd",
+  "se-FI", "seh-MZ", "seh", "se-NO", "se-SE", "ses-ML", "ses", "se", "sg-CF",
+  "sg", "sh-BA", "sh-CS", "shi-Latn-MA", "shi-Latn", "shi-MA", "shi-Tfng-MA",
+  "shi-Tfng", "shi", "sh", "sh-YU", "si-LK", "si", "sk-SK", "sk", "sl-SI", "sl",
+  "smn-FI", "smn", "sn", "sn-ZW", "so-DJ", "so-ET", "so-KE", "so-SO", "so",
+  "sq-AL", "sq-MK", "sq", "sq-XK", "sr-BA", "sr-CS", "sr-Cyrl-BA", "sr-Cyrl-CS",
+  "sr-Cyrl-ME", "sr-Cyrl-RS", "sr-Cyrl", "sr-Cyrl-XK", "sr-Cyrl-YU",
+  "sr-Latn-BA", "sr-Latn-CS", "sr-Latn-ME", "sr-Latn-RS", "sr-Latn",
+  "sr-Latn-XK", "sr-Latn-YU", "sr-ME", "sr-RS", "sr", "sr-XK", "sr-YU", "sv-AX",
+  "sv-FI", "sv-SE", "sv", "sw-CD", "sw-KE", "sw", "sw-TZ", "sw-UG", "ta-IN",
+  "ta-LK", "ta-MY", "ta-SG", "ta", "te-IN", "teo-KE", "teo", "teo-UG", "te",
+  "tg-TJ", "tg", "th-TH", "th", "ti-ER", "ti-ET", "ti",
+  "tk-TM", "tk", "tl-PH", "tl", "to-TO", "to", "tr-CY", "tr-TR", "tr", "tt-RU",
+  "tt", "twq-NE", "twq", "tzm-MA", "tzm", "ug-CN", "ug", "uk", "uk-UA", "ur-IN",
+  "ur-PK", "ur", "uz-AF", "uz-Arab-AF", "uz-Arab", "uz-Cyrl", "uz-Cyrl-UZ",
+  "uz-Latn", "uz-Latn-UZ", "uz", "uz-UZ", "vai-Latn-LR", "vai-Latn", "vai-LR",
+  "vai", "vai-Vaii-LR", "vai-Vaii", "vi", "vi-VN", "vun", "vun-TZ", "wae-CH",
+  "wae", "wa", "wo-SN", "wo", "xh", "xh-ZA", "xog", "xog-UG", "yav-CM", "yav",
+  "yi-001", "yi", "yo-BJ", "yo-NG", "yo", "yue-CN", "yue-Hans-CN", "yue-Hans",
+  "yue-Hant-HK", "yue-Hant", "yue-HK", "yue", "zgh-MA", "zgh", "zh-CN",
+  "zh-Hans-CN", "zh-Hans-HK", "zh-Hans-MO", "zh-Hans-SG", "zh-Hans",
+  "zh-Hant-HK", "zh-Hant-MO", "zh-Hant-TW", "zh-Hant", "zh-HK", "zh-MO", "zh-SG",
+  "zh-TW", "zh", "zu", "zu-ZA"];
+
+// The test timeout in TSAN so we split into 9 different tests.
+// "Table 5: Components of date and time formats" as in
+// https://ecma-international.org/ecma-402/#sec-datetimeformat-abstracts
+let table5 = [
+  // ["weekday", ["narrow", "short", "long"]],
+  // ["era", ["narrow", "short", "long"]],
+  // ["year", ["2-digit", "numeric"]],
+  // ["month", ["2-digit", "numeric", "narrow", "short", "long"]],
+  // ["day", ["2-digit", "numeric"]],
+  // ["hour", ["2-digit", "numeric"]],
+  // ["minute", ["2-digit", "numeric"]],
+  ["second", ["2-digit", "numeric"]],
+  // ["timeZoneName", ["short", "long"]]
+];
+
+// Test each locale
+for (let loc of locales) {
+  // Test each property in Table 5
+  for (let row of table5) {
+    let prop = row[0];
+    let values = row[1];
+    // Test each value of the property
+    for (let value of values) {
+      let opt = {};
+      opt[prop] = value;
+      let dft = new Intl.DateTimeFormat([loc], opt);
+      let result = dft.resolvedOptions();
+      assertTrue(values.indexOf(result[prop]) >= 0,
+          "Expect new Intl.DateTimeFormat([" + loc + "], {" + prop + ": '" +
+          value + "'}).resolvedOptions()['" + prop + "'] to return one of [" +
+          values + "] but got '" + result[prop] + "'");
+    }
+  }
+}
diff --git a/implementation-contributed/v8/intl/regress-8413-timeZoneName.js b/implementation-contributed/v8/intl/regress-8413-timeZoneName.js
new file mode 100644
index 0000000000..28fda9861f
--- /dev/null
+++ b/implementation-contributed/v8/intl/regress-8413-timeZoneName.js
@@ -0,0 +1,135 @@
+// 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.
+
+// All the known locales egrep by
+// find third_party/icu/source/data/locales/*.txt|cut -d: -f 1| \
+//     sort -u|cut -d/ -f6|cut -d. -f1|tr "_" "-"
+let locales = [
+  "af-NA", "af", "af-ZA", "agq-CM", "agq", "ak-GH", "ak", "am-ET", "am", "an",
+  "ar-001", "ar-AE", "ar-BH", "ar-DJ", "ar-DZ", "ar-EG", "ar-EH", "ar-ER",
+  "ar-IL", "ar-IQ", "ar-JO", "ar-KM", "ar-KW", "ar-LB", "ar-LY", "ar-MA",
+  "ar-MR", "ar-OM", "ar-PS", "ar-QA", "ar-SA", "ar-SD", "ar-SO", "ar-SS",
+  "ars", "ar-SY", "ar-TD", "ar-TN", "ar", "ar-YE", "asa", "asa-TZ", "as-IN",
+  "ast-ES", "ast", "as", "az-AZ", "az-Cyrl-AZ", "az-Cyrl", "az-Latn-AZ",
+  "az-Latn", "az", "bas-CM", "bas", "be-BY", "bem", "bem-ZM", "be", "bez",
+  "bez-TZ", "bg-BG", "bg", "bm-ML", "bm", "bn-BD", "bn-IN", "bn", "bo-CN",
+  "bo-IN", "bo", "br-FR", "br", "brx-IN", "brx", "bs-BA", "bs-Cyrl-BA",
+  "bs-Cyrl", "bs-Latn-BA", "bs-Latn", "bs", "ca-AD", "ca-ES", "ca-FR",
+  "ca-IT", "ca", "ccp-BD", "ccp-IN", "ccp", "ce-RU", "ce", "cgg", "cgg-UG",
+  "chr", "chr-US", "ckb-IQ", "ckb-IR", "ckb", "cs-CZ", "cs", "cy-GB", "cy",
+  "da-DK", "da-GL", "da", "dav-KE", "dav", "de-AT", "de-BE", "de-CH", "de-DE",
+  "de-IT", "de-LI", "de-LU", "de", "dje-NE", "dje", "dsb-DE", "dsb", "dua-CM",
+  "dua", "dyo-SN", "dyo", "dz-BT", "dz", "ebu-KE", "ebu", "ee-GH", "ee-TG",
+  "ee", "el-CY", "el-GR", "el", "en-001", "en-150", "en-AG", "en-AI", "en-AS",
+  "en-AT", "en-AU", "en-BB", "en-BE", "en-BI", "en-BM", "en-BS", "en-BW",
+  "en-BZ", "en-CA", "en-CC", "en-CH", "en-CK", "en-CM", "en-CX", "en-CY",
+  "en-DE", "en-DG", "en-DK", "en-DM", "en-ER", "en-FI", "en-FJ", "en-FK",
+  "en-FM", "en-GB", "en-GD", "en-GG", "en-GH", "en-GI", "en-GM", "en-GU",
+  "en-GY", "en-HK", "en-IE", "en-IL", "en-IM", "en-IN", "en-IO", "en-JE",
+  "en-JM", "en-KE", "en-KI", "en-KN", "en-KY", "en-LC", "en-LR", "en-LS",
+  "en-MG", "en-MH", "en-MO", "en-MP", "en-MS", "en-MT", "en-MU", "en-MW",
+  "en-MY", "en-NA", "en-NF", "en-NG", "en-NH", "en-NL", "en-NR", "en-NU",
+  "en-NZ", "en-PG", "en-PH", "en-PK", "en-PN", "en-PR", "en-PW", "en-RH",
+  "en-RW", "en-SB", "en-SC", "en-SD", "en-SE", "en-SG", "en-SH", "en-SI",
+  "en-SL", "en-SS", "en-SX", "en-SZ", "en-TC", "en-TK", "en-TO", "en-TT",
+  "en-TV", "en", "en-TZ", "en-UG", "en-UM", "en-US-POSIX", "en-US", "en-VC",
+  "en-VG", "en-VI", "en-VU", "en-WS", "en-ZA", "en-ZM", "en-ZW", "eo", "es-419",
+  "es-AR", "es-BO", "es-BR", "es-BZ", "es-CL", "es-CO", "es-CR", "es-CU",
+  "es-DO", "es-EA", "es-EC", "es-ES", "es-GQ", "es-GT", "es-HN", "es-IC",
+  "es-MX", "es-NI", "es-PA", "es-PE", "es-PH", "es-PR", "es-PY", "es-SV", "es",
+  "es-US", "es-UY", "es-VE", "et-EE", "et", "eu-ES", "eu", "ewo-CM", "ewo",
+  "fa-AF", "fa-IR", "fa", "ff", "fi-FI", "fil-PH", "fil", "fi", "fo-DK",
+  "fo-FO", "fo", "fr-BE", "fr-BF", "fr-BI", "fr-BJ", "fr-BL", "fr-CA", "fr-CD",
+  "fr-CF", "fr-CG", "fr-CH", "fr-CI", "fr-CM", "fr-DJ", "fr-DZ", "fr-FR",
+  "fr-GA", "fr-GF", "fr-GN", "fr-GP", "fr-GQ", "fr-HT", "fr-KM", "fr-LU",
+  "fr-MA", "fr-MC", "fr-MF", "fr-MG", "fr-ML", "fr-MQ", "fr-MR", "fr-MU",
+  "fr-NC", "fr-NE", "fr-PF", "fr-PM", "fr-RE", "fr-RW", "fr-SC", "fr-SN",
+  "fr-SY", "fr-TD", "fr-TG", "fr-TN", "fr", "fr-VU", "fr-WF", "fr-YT",
+  "fur-IT", "fur", "fy-NL", "fy", "ga-IE", "ga", "gd-GB", "gd", "gl-ES", "gl",
+  "gsw-CH", "gsw-FR", "gsw-LI", "gsw", "gu-IN", "gu", "guz-KE", "guz", "gv-IM",
+  "gv", "ha-GH", "ha-NE", "ha-NG", "ha", "haw", "haw-US", "he-IL", "he",
+  "hi-IN", "hi", "hr-BA", "hr-HR", "hr", "hsb-DE", "hsb", "hu-HU", "hu",
+  "hy-AM", "hy", "ia-001", "ia", "id-ID", "id", "ig-NG", "ig", "ii-CN", "ii",
+  "in-ID", "in", "is-IS", "is", "it-CH", "it-IT", "it-SM", "it", "it-VA",
+  "iw-IL", "iw", "ja-JP", "ja", "jgo-CM", "jgo", "jmc",
+  "jmc-TZ", "jv-ID", "jv", "kab-DZ", "kab", "ka-GE", "kam-KE", "kam", "ka",
+  "kde", "kde-TZ", "kea-CV", "kea", "khq-ML", "khq", "ki-KE", "ki", "kkj-CM",
+  "kkj", "kk-KZ", "kk", "kl-GL", "kln-KE", "kln", "kl", "km-KH", "km", "kn-IN",
+  "kn", "kok-IN", "ko-KP", "ko-KR", "kok", "ko", "ksb", "ksb-TZ", "ksf-CM",
+  "ksf", "ksh-DE", "ksh", "ks-IN", "ks", "ku-TR", "ku", "kw-GB", "kw", "ky-KG",
+  "ky", "lag", "lag-TZ", "lb-LU", "lb", "lg", "lg-UG", "lkt", "lkt-US", "ln-AO",
+  "ln-CD", "ln-CF", "ln-CG", "ln", "lo-LA", "lo", "lrc-IQ", "lrc-IR", "lrc",
+  "lt-LT", "lt", "lu-CD", "luo-KE", "luo", "lu", "luy-KE", "luy", "lv-LV", "lv",
+  "mas-KE", "mas", "mas-TZ", "mer-KE", "mer", "mfe-MU", "mfe", "mgh-MZ", "mgh",
+  "mg-MG", "mgo-CM", "mgo", "mg", "mi-NZ", "mi", "mk-MK", "mk", "ml-IN", "ml",
+  "mn-MN", "mn", "mo", "mr-IN", "mr", "ms-BN", "ms-MY", "ms-SG", "ms", "mt-MT",
+  "mt", "mua-CM", "mua", "my-MM", "my", "mzn-IR", "mzn", "naq-NA", "naq",
+  "nb-NO", "nb-SJ", "nb", "nds-DE", "nds-NL", "nds", "nd", "nd-ZW", "ne-IN",
+  "ne-NP", "ne", "nl-AW", "nl-BE", "nl-BQ", "nl-CW", "nl-NL", "nl-SR", "nl-SX",
+  "nl", "nmg-CM", "nmg", "nnh-CM", "nnh", "nn-NO", "nn", "no-NY", "no-NO",
+  "no", "nus-SS", "nus", "nyn", "nyn-UG", "om-ET", "om-KE", "om", "or-IN", "or",
+  "os-GE", "os-RU", "os", "pa-Arab-PK", "pa-Arab", "pa-Guru-IN", "pa-Guru",
+  "pa-IN", "pa-PK", "pa", "pl-PL", "pl", "ps-AF", "ps", "pt-AO", "pt-BR",
+  "pt-CH", "pt-CV", "pt-GQ", "pt-GW", "pt-LU", "pt-MO", "pt-MZ", "pt-PT",
+  "pt-ST", "pt-TL", "pt", "qu-BO", "qu-EC", "qu-PE", "qu", "rm-CH", "rm",
+  "rn-BI", "rn", "rof", "rof-TZ", "ro-MD", "root", "ro-RO", "ro", "ru-BY",
+  "ru-KG", "ru-KZ", "ru-MD", "ru-RU", "ru", "ru-UA", "rwk", "rwk-TZ", "rw-RW",
+  "rw", "sah-RU", "sah", "saq-KE", "saq", "sbp", "sbp-TZ", "sd-PK", "sd",
+  "se-FI", "seh-MZ", "seh", "se-NO", "se-SE", "ses-ML", "ses", "se", "sg-CF",
+  "sg", "sh-BA", "sh-CS", "shi-Latn-MA", "shi-Latn", "shi-MA", "shi-Tfng-MA",
+  "shi-Tfng", "shi", "sh", "sh-YU", "si-LK", "si", "sk-SK", "sk", "sl-SI", "sl",
+  "smn-FI", "smn", "sn", "sn-ZW", "so-DJ", "so-ET", "so-KE", "so-SO", "so",
+  "sq-AL", "sq-MK", "sq", "sq-XK", "sr-BA", "sr-CS", "sr-Cyrl-BA", "sr-Cyrl-CS",
+  "sr-Cyrl-ME", "sr-Cyrl-RS", "sr-Cyrl", "sr-Cyrl-XK", "sr-Cyrl-YU",
+  "sr-Latn-BA", "sr-Latn-CS", "sr-Latn-ME", "sr-Latn-RS", "sr-Latn",
+  "sr-Latn-XK", "sr-Latn-YU", "sr-ME", "sr-RS", "sr", "sr-XK", "sr-YU", "sv-AX",
+  "sv-FI", "sv-SE", "sv", "sw-CD", "sw-KE", "sw", "sw-TZ", "sw-UG", "ta-IN",
+  "ta-LK", "ta-MY", "ta-SG", "ta", "te-IN", "teo-KE", "teo", "teo-UG", "te",
+  "tg-TJ", "tg", "th-TH", "th", "ti-ER", "ti-ET", "ti",
+  "tk-TM", "tk", "tl-PH", "tl", "to-TO", "to", "tr-CY", "tr-TR", "tr", "tt-RU",
+  "tt", "twq-NE", "twq", "tzm-MA", "tzm", "ug-CN", "ug", "uk", "uk-UA", "ur-IN",
+  "ur-PK", "ur", "uz-AF", "uz-Arab-AF", "uz-Arab", "uz-Cyrl", "uz-Cyrl-UZ",
+  "uz-Latn", "uz-Latn-UZ", "uz", "uz-UZ", "vai-Latn-LR", "vai-Latn", "vai-LR",
+  "vai", "vai-Vaii-LR", "vai-Vaii", "vi", "vi-VN", "vun", "vun-TZ", "wae-CH",
+  "wae", "wa", "wo-SN", "wo", "xh", "xh-ZA", "xog", "xog-UG", "yav-CM", "yav",
+  "yi-001", "yi", "yo-BJ", "yo-NG", "yo", "yue-CN", "yue-Hans-CN", "yue-Hans",
+  "yue-Hant-HK", "yue-Hant", "yue-HK", "yue", "zgh-MA", "zgh", "zh-CN",
+  "zh-Hans-CN", "zh-Hans-HK", "zh-Hans-MO", "zh-Hans-SG", "zh-Hans",
+  "zh-Hant-HK", "zh-Hant-MO", "zh-Hant-TW", "zh-Hant", "zh-HK", "zh-MO", "zh-SG",
+  "zh-TW", "zh", "zu", "zu-ZA"];
+
+// The test timeout in TSAN so we split into 9 different tests.
+// "Table 5: Components of date and time formats" as in
+// https://ecma-international.org/ecma-402/#sec-datetimeformat-abstracts
+let table5 = [
+  // ["weekday", ["narrow", "short", "long"]],
+  // ["era", ["narrow", "short", "long"]],
+  // ["year", ["2-digit", "numeric"]],
+  // ["month", ["2-digit", "numeric", "narrow", "short", "long"]],
+  // ["day", ["2-digit", "numeric"]],
+  // ["hour", ["2-digit", "numeric"]],
+  // ["minute", ["2-digit", "numeric"]],
+  // ["second", ["2-digit", "numeric"]],
+  ["timeZoneName", ["short", "long"]]
+];
+
+// Test each locale
+for (let loc of locales) {
+  // Test each property in Table 5
+  for (let row of table5) {
+    let prop = row[0];
+    let values = row[1];
+    // Test each value of the property
+    for (let value of values) {
+      let opt = {};
+      opt[prop] = value;
+      let dft = new Intl.DateTimeFormat([loc], opt);
+      let result = dft.resolvedOptions();
+      assertTrue(values.indexOf(result[prop]) >= 0,
+          "Expect new Intl.DateTimeFormat([" + loc + "], {" + prop + ": '" +
+          value + "'}).resolvedOptions()['" + prop + "'] to return one of [" +
+          values + "] but got '" + result[prop] + "'");
+    }
+  }
+}
diff --git a/implementation-contributed/v8/intl/regress-8413-weekday.js b/implementation-contributed/v8/intl/regress-8413-weekday.js
new file mode 100644
index 0000000000..9d399e727f
--- /dev/null
+++ b/implementation-contributed/v8/intl/regress-8413-weekday.js
@@ -0,0 +1,135 @@
+// 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.
+
+// All the known locales egrep by
+// find third_party/icu/source/data/locales/*.txt|cut -d: -f 1| \
+//     sort -u|cut -d/ -f6|cut -d. -f1|tr "_" "-"
+let locales = [
+  "af-NA", "af", "af-ZA", "agq-CM", "agq", "ak-GH", "ak", "am-ET", "am", "an",
+  "ar-001", "ar-AE", "ar-BH", "ar-DJ", "ar-DZ", "ar-EG", "ar-EH", "ar-ER",
+  "ar-IL", "ar-IQ", "ar-JO", "ar-KM", "ar-KW", "ar-LB", "ar-LY", "ar-MA",
+  "ar-MR", "ar-OM", "ar-PS", "ar-QA", "ar-SA", "ar-SD", "ar-SO", "ar-SS",
+  "ars", "ar-SY", "ar-TD", "ar-TN", "ar", "ar-YE", "asa", "asa-TZ", "as-IN",
+  "ast-ES", "ast", "as", "az-AZ", "az-Cyrl-AZ", "az-Cyrl", "az-Latn-AZ",
+  "az-Latn", "az", "bas-CM", "bas", "be-BY", "bem", "bem-ZM", "be", "bez",
+  "bez-TZ", "bg-BG", "bg", "bm-ML", "bm", "bn-BD", "bn-IN", "bn", "bo-CN",
+  "bo-IN", "bo", "br-FR", "br", "brx-IN", "brx", "bs-BA", "bs-Cyrl-BA",
+  "bs-Cyrl", "bs-Latn-BA", "bs-Latn", "bs", "ca-AD", "ca-ES", "ca-FR",
+  "ca-IT", "ca", "ccp-BD", "ccp-IN", "ccp", "ce-RU", "ce", "cgg", "cgg-UG",
+  "chr", "chr-US", "ckb-IQ", "ckb-IR", "ckb", "cs-CZ", "cs", "cy-GB", "cy",
+  "da-DK", "da-GL", "da", "dav-KE", "dav", "de-AT", "de-BE", "de-CH", "de-DE",
+  "de-IT", "de-LI", "de-LU", "de", "dje-NE", "dje", "dsb-DE", "dsb", "dua-CM",
+  "dua", "dyo-SN", "dyo", "dz-BT", "dz", "ebu-KE", "ebu", "ee-GH", "ee-TG",
+  "ee", "el-CY", "el-GR", "el", "en-001", "en-150", "en-AG", "en-AI", "en-AS",
+  "en-AT", "en-AU", "en-BB", "en-BE", "en-BI", "en-BM", "en-BS", "en-BW",
+  "en-BZ", "en-CA", "en-CC", "en-CH", "en-CK", "en-CM", "en-CX", "en-CY",
+  "en-DE", "en-DG", "en-DK", "en-DM", "en-ER", "en-FI", "en-FJ", "en-FK",
+  "en-FM", "en-GB", "en-GD", "en-GG", "en-GH", "en-GI", "en-GM", "en-GU",
+  "en-GY", "en-HK", "en-IE", "en-IL", "en-IM", "en-IN", "en-IO", "en-JE",
+  "en-JM", "en-KE", "en-KI", "en-KN", "en-KY", "en-LC", "en-LR", "en-LS",
+  "en-MG", "en-MH", "en-MO", "en-MP", "en-MS", "en-MT", "en-MU", "en-MW",
+  "en-MY", "en-NA", "en-NF", "en-NG", "en-NH", "en-NL", "en-NR", "en-NU",
+  "en-NZ", "en-PG", "en-PH", "en-PK", "en-PN", "en-PR", "en-PW", "en-RH",
+  "en-RW", "en-SB", "en-SC", "en-SD", "en-SE", "en-SG", "en-SH", "en-SI",
+  "en-SL", "en-SS", "en-SX", "en-SZ", "en-TC", "en-TK", "en-TO", "en-TT",
+  "en-TV", "en", "en-TZ", "en-UG", "en-UM", "en-US-POSIX", "en-US", "en-VC",
+  "en-VG", "en-VI", "en-VU", "en-WS", "en-ZA", "en-ZM", "en-ZW", "eo", "es-419",
+  "es-AR", "es-BO", "es-BR", "es-BZ", "es-CL", "es-CO", "es-CR", "es-CU",
+  "es-DO", "es-EA", "es-EC", "es-ES", "es-GQ", "es-GT", "es-HN", "es-IC",
+  "es-MX", "es-NI", "es-PA", "es-PE", "es-PH", "es-PR", "es-PY", "es-SV", "es",
+  "es-US", "es-UY", "es-VE", "et-EE", "et", "eu-ES", "eu", "ewo-CM", "ewo",
+  "fa-AF", "fa-IR", "fa", "ff", "fi-FI", "fil-PH", "fil", "fi", "fo-DK",
+  "fo-FO", "fo", "fr-BE", "fr-BF", "fr-BI", "fr-BJ", "fr-BL", "fr-CA", "fr-CD",
+  "fr-CF", "fr-CG", "fr-CH", "fr-CI", "fr-CM", "fr-DJ", "fr-DZ", "fr-FR",
+  "fr-GA", "fr-GF", "fr-GN", "fr-GP", "fr-GQ", "fr-HT", "fr-KM", "fr-LU",
+  "fr-MA", "fr-MC", "fr-MF", "fr-MG", "fr-ML", "fr-MQ", "fr-MR", "fr-MU",
+  "fr-NC", "fr-NE", "fr-PF", "fr-PM", "fr-RE", "fr-RW", "fr-SC", "fr-SN",
+  "fr-SY", "fr-TD", "fr-TG", "fr-TN", "fr", "fr-VU", "fr-WF", "fr-YT",
+  "fur-IT", "fur", "fy-NL", "fy", "ga-IE", "ga", "gd-GB", "gd", "gl-ES", "gl",
+  "gsw-CH", "gsw-FR", "gsw-LI", "gsw", "gu-IN", "gu", "guz-KE", "guz", "gv-IM",
+  "gv", "ha-GH", "ha-NE", "ha-NG", "ha", "haw", "haw-US", "he-IL", "he",
+  "hi-IN", "hi", "hr-BA", "hr-HR", "hr", "hsb-DE", "hsb", "hu-HU", "hu",
+  "hy-AM", "hy", "ia-001", "ia", "id-ID", "id", "ig-NG", "ig", "ii-CN", "ii",
+  "in-ID", "in", "is-IS", "is", "it-CH", "it-IT", "it-SM", "it", "it-VA",
+  "iw-IL", "iw", "ja-JP", "ja", "jgo-CM", "jgo", "jmc",
+  "jmc-TZ", "jv-ID", "jv", "kab-DZ", "kab", "ka-GE", "kam-KE", "kam", "ka",
+  "kde", "kde-TZ", "kea-CV", "kea", "khq-ML", "khq", "ki-KE", "ki", "kkj-CM",
+  "kkj", "kk-KZ", "kk", "kl-GL", "kln-KE", "kln", "kl", "km-KH", "km", "kn-IN",
+  "kn", "kok-IN", "ko-KP", "ko-KR", "kok", "ko", "ksb", "ksb-TZ", "ksf-CM",
+  "ksf", "ksh-DE", "ksh", "ks-IN", "ks", "ku-TR", "ku", "kw-GB", "kw", "ky-KG",
+  "ky", "lag", "lag-TZ", "lb-LU", "lb", "lg", "lg-UG", "lkt", "lkt-US", "ln-AO",
+  "ln-CD", "ln-CF", "ln-CG", "ln", "lo-LA", "lo", "lrc-IQ", "lrc-IR", "lrc",
+  "lt-LT", "lt", "lu-CD", "luo-KE", "luo", "lu", "luy-KE", "luy", "lv-LV", "lv",
+  "mas-KE", "mas", "mas-TZ", "mer-KE", "mer", "mfe-MU", "mfe", "mgh-MZ", "mgh",
+  "mg-MG", "mgo-CM", "mgo", "mg", "mi-NZ", "mi", "mk-MK", "mk", "ml-IN", "ml",
+  "mn-MN", "mn", "mo", "mr-IN", "mr", "ms-BN", "ms-MY", "ms-SG", "ms", "mt-MT",
+  "mt", "mua-CM", "mua", "my-MM", "my", "mzn-IR", "mzn", "naq-NA", "naq",
+  "nb-NO", "nb-SJ", "nb", "nds-DE", "nds-NL", "nds", "nd", "nd-ZW", "ne-IN",
+  "ne-NP", "ne", "nl-AW", "nl-BE", "nl-BQ", "nl-CW", "nl-NL", "nl-SR", "nl-SX",
+  "nl", "nmg-CM", "nmg", "nnh-CM", "nnh", "nn-NO", "nn", "no-NY", "no-NO",
+  "no", "nus-SS", "nus", "nyn", "nyn-UG", "om-ET", "om-KE", "om", "or-IN", "or",
+  "os-GE", "os-RU", "os", "pa-Arab-PK", "pa-Arab", "pa-Guru-IN", "pa-Guru",
+  "pa-IN", "pa-PK", "pa", "pl-PL", "pl", "ps-AF", "ps", "pt-AO", "pt-BR",
+  "pt-CH", "pt-CV", "pt-GQ", "pt-GW", "pt-LU", "pt-MO", "pt-MZ", "pt-PT",
+  "pt-ST", "pt-TL", "pt", "qu-BO", "qu-EC", "qu-PE", "qu", "rm-CH", "rm",
+  "rn-BI", "rn", "rof", "rof-TZ", "ro-MD", "root", "ro-RO", "ro", "ru-BY",
+  "ru-KG", "ru-KZ", "ru-MD", "ru-RU", "ru", "ru-UA", "rwk", "rwk-TZ", "rw-RW",
+  "rw", "sah-RU", "sah", "saq-KE", "saq", "sbp", "sbp-TZ", "sd-PK", "sd",
+  "se-FI", "seh-MZ", "seh", "se-NO", "se-SE", "ses-ML", "ses", "se", "sg-CF",
+  "sg", "sh-BA", "sh-CS", "shi-Latn-MA", "shi-Latn", "shi-MA", "shi-Tfng-MA",
+  "shi-Tfng", "shi", "sh", "sh-YU", "si-LK", "si", "sk-SK", "sk", "sl-SI", "sl",
+  "smn-FI", "smn", "sn", "sn-ZW", "so-DJ", "so-ET", "so-KE", "so-SO", "so",
+  "sq-AL", "sq-MK", "sq", "sq-XK", "sr-BA", "sr-CS", "sr-Cyrl-BA", "sr-Cyrl-CS",
+  "sr-Cyrl-ME", "sr-Cyrl-RS", "sr-Cyrl", "sr-Cyrl-XK", "sr-Cyrl-YU",
+  "sr-Latn-BA", "sr-Latn-CS", "sr-Latn-ME", "sr-Latn-RS", "sr-Latn",
+  "sr-Latn-XK", "sr-Latn-YU", "sr-ME", "sr-RS", "sr", "sr-XK", "sr-YU", "sv-AX",
+  "sv-FI", "sv-SE", "sv", "sw-CD", "sw-KE", "sw", "sw-TZ", "sw-UG", "ta-IN",
+  "ta-LK", "ta-MY", "ta-SG", "ta", "te-IN", "teo-KE", "teo", "teo-UG", "te",
+  "tg-TJ", "tg", "th-TH", "th", "ti-ER", "ti-ET", "ti",
+  "tk-TM", "tk", "tl-PH", "tl", "to-TO", "to", "tr-CY", "tr-TR", "tr", "tt-RU",
+  "tt", "twq-NE", "twq", "tzm-MA", "tzm", "ug-CN", "ug", "uk", "uk-UA", "ur-IN",
+  "ur-PK", "ur", "uz-AF", "uz-Arab-AF", "uz-Arab", "uz-Cyrl", "uz-Cyrl-UZ",
+  "uz-Latn", "uz-Latn-UZ", "uz", "uz-UZ", "vai-Latn-LR", "vai-Latn", "vai-LR",
+  "vai", "vai-Vaii-LR", "vai-Vaii", "vi", "vi-VN", "vun", "vun-TZ", "wae-CH",
+  "wae", "wa", "wo-SN", "wo", "xh", "xh-ZA", "xog", "xog-UG", "yav-CM", "yav",
+  "yi-001", "yi", "yo-BJ", "yo-NG", "yo", "yue-CN", "yue-Hans-CN", "yue-Hans",
+  "yue-Hant-HK", "yue-Hant", "yue-HK", "yue", "zgh-MA", "zgh", "zh-CN",
+  "zh-Hans-CN", "zh-Hans-HK", "zh-Hans-MO", "zh-Hans-SG", "zh-Hans",
+  "zh-Hant-HK", "zh-Hant-MO", "zh-Hant-TW", "zh-Hant", "zh-HK", "zh-MO", "zh-SG",
+  "zh-TW", "zh", "zu", "zu-ZA"];
+
+// The test timeout in TSAN so we split into 9 different tests.
+// "Table 5: Components of date and time formats" as in
+// https://ecma-international.org/ecma-402/#sec-datetimeformat-abstracts
+let table5 = [
+  ["weekday", ["narrow", "short", "long"]],
+  // ["era", ["narrow", "short", "long"]],
+  // ["year", ["2-digit", "numeric"]],
+  // ["month", ["2-digit", "numeric", "narrow", "short", "long"]],
+  // ["day", ["2-digit", "numeric"]],
+  // ["hour", ["2-digit", "numeric"]],
+  // ["minute", ["2-digit", "numeric"]],
+  // ["second", ["2-digit", "numeric"]],
+  // ["timeZoneName", ["short", "long"]]
+];
+
+// Test each locale
+for (let loc of locales) {
+  // Test each property in Table 5
+  for (let row of table5) {
+    let prop = row[0];
+    let values = row[1];
+    // Test each value of the property
+    for (let value of values) {
+      let opt = {};
+      opt[prop] = value;
+      let dft = new Intl.DateTimeFormat([loc], opt);
+      let result = dft.resolvedOptions();
+      assertTrue(values.indexOf(result[prop]) >= 0,
+          "Expect new Intl.DateTimeFormat([" + loc + "], {" + prop + ": '" +
+          value + "'}).resolvedOptions()['" + prop + "'] to return one of [" +
+          values + "] but got '" + result[prop] + "'");
+    }
+  }
+}
diff --git a/implementation-contributed/v8/intl/regress-8413-year.js b/implementation-contributed/v8/intl/regress-8413-year.js
new file mode 100644
index 0000000000..9702a2542d
--- /dev/null
+++ b/implementation-contributed/v8/intl/regress-8413-year.js
@@ -0,0 +1,135 @@
+// 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.
+
+// All the known locales egrep by
+// find third_party/icu/source/data/locales/*.txt|cut -d: -f 1| \
+//     sort -u|cut -d/ -f6|cut -d. -f1|tr "_" "-"
+let locales = [
+  "af-NA", "af", "af-ZA", "agq-CM", "agq", "ak-GH", "ak", "am-ET", "am", "an",
+  "ar-001", "ar-AE", "ar-BH", "ar-DJ", "ar-DZ", "ar-EG", "ar-EH", "ar-ER",
+  "ar-IL", "ar-IQ", "ar-JO", "ar-KM", "ar-KW", "ar-LB", "ar-LY", "ar-MA",
+  "ar-MR", "ar-OM", "ar-PS", "ar-QA", "ar-SA", "ar-SD", "ar-SO", "ar-SS",
+  "ars", "ar-SY", "ar-TD", "ar-TN", "ar", "ar-YE", "asa", "asa-TZ", "as-IN",
+  "ast-ES", "ast", "as", "az-AZ", "az-Cyrl-AZ", "az-Cyrl", "az-Latn-AZ",
+  "az-Latn", "az", "bas-CM", "bas", "be-BY", "bem", "bem-ZM", "be", "bez",
+  "bez-TZ", "bg-BG", "bg", "bm-ML", "bm", "bn-BD", "bn-IN", "bn", "bo-CN",
+  "bo-IN", "bo", "br-FR", "br", "brx-IN", "brx", "bs-BA", "bs-Cyrl-BA",
+  "bs-Cyrl", "bs-Latn-BA", "bs-Latn", "bs", "ca-AD", "ca-ES", "ca-FR",
+  "ca-IT", "ca", "ccp-BD", "ccp-IN", "ccp", "ce-RU", "ce", "cgg", "cgg-UG",
+  "chr", "chr-US", "ckb-IQ", "ckb-IR", "ckb", "cs-CZ", "cs", "cy-GB", "cy",
+  "da-DK", "da-GL", "da", "dav-KE", "dav", "de-AT", "de-BE", "de-CH", "de-DE",
+  "de-IT", "de-LI", "de-LU", "de", "dje-NE", "dje", "dsb-DE", "dsb", "dua-CM",
+  "dua", "dyo-SN", "dyo", "dz-BT", "dz", "ebu-KE", "ebu", "ee-GH", "ee-TG",
+  "ee", "el-CY", "el-GR", "el", "en-001", "en-150", "en-AG", "en-AI", "en-AS",
+  "en-AT", "en-AU", "en-BB", "en-BE", "en-BI", "en-BM", "en-BS", "en-BW",
+  "en-BZ", "en-CA", "en-CC", "en-CH", "en-CK", "en-CM", "en-CX", "en-CY",
+  "en-DE", "en-DG", "en-DK", "en-DM", "en-ER", "en-FI", "en-FJ", "en-FK",
+  "en-FM", "en-GB", "en-GD", "en-GG", "en-GH", "en-GI", "en-GM", "en-GU",
+  "en-GY", "en-HK", "en-IE", "en-IL", "en-IM", "en-IN", "en-IO", "en-JE",
+  "en-JM", "en-KE", "en-KI", "en-KN", "en-KY", "en-LC", "en-LR", "en-LS",
+  "en-MG", "en-MH", "en-MO", "en-MP", "en-MS", "en-MT", "en-MU", "en-MW",
+  "en-MY", "en-NA", "en-NF", "en-NG", "en-NH", "en-NL", "en-NR", "en-NU",
+  "en-NZ", "en-PG", "en-PH", "en-PK", "en-PN", "en-PR", "en-PW", "en-RH",
+  "en-RW", "en-SB", "en-SC", "en-SD", "en-SE", "en-SG", "en-SH", "en-SI",
+  "en-SL", "en-SS", "en-SX", "en-SZ", "en-TC", "en-TK", "en-TO", "en-TT",
+  "en-TV", "en", "en-TZ", "en-UG", "en-UM", "en-US-POSIX", "en-US", "en-VC",
+  "en-VG", "en-VI", "en-VU", "en-WS", "en-ZA", "en-ZM", "en-ZW", "eo", "es-419",
+  "es-AR", "es-BO", "es-BR", "es-BZ", "es-CL", "es-CO", "es-CR", "es-CU",
+  "es-DO", "es-EA", "es-EC", "es-ES", "es-GQ", "es-GT", "es-HN", "es-IC",
+  "es-MX", "es-NI", "es-PA", "es-PE", "es-PH", "es-PR", "es-PY", "es-SV", "es",
+  "es-US", "es-UY", "es-VE", "et-EE", "et", "eu-ES", "eu", "ewo-CM", "ewo",
+  "fa-AF", "fa-IR", "fa", "ff", "fi-FI", "fil-PH", "fil", "fi", "fo-DK",
+  "fo-FO", "fo", "fr-BE", "fr-BF", "fr-BI", "fr-BJ", "fr-BL", "fr-CA", "fr-CD",
+  "fr-CF", "fr-CG", "fr-CH", "fr-CI", "fr-CM", "fr-DJ", "fr-DZ", "fr-FR",
+  "fr-GA", "fr-GF", "fr-GN", "fr-GP", "fr-GQ", "fr-HT", "fr-KM", "fr-LU",
+  "fr-MA", "fr-MC", "fr-MF", "fr-MG", "fr-ML", "fr-MQ", "fr-MR", "fr-MU",
+  "fr-NC", "fr-NE", "fr-PF", "fr-PM", "fr-RE", "fr-RW", "fr-SC", "fr-SN",
+  "fr-SY", "fr-TD", "fr-TG", "fr-TN", "fr", "fr-VU", "fr-WF", "fr-YT",
+  "fur-IT", "fur", "fy-NL", "fy", "ga-IE", "ga", "gd-GB", "gd", "gl-ES", "gl",
+  "gsw-CH", "gsw-FR", "gsw-LI", "gsw", "gu-IN", "gu", "guz-KE", "guz", "gv-IM",
+  "gv", "ha-GH", "ha-NE", "ha-NG", "ha", "haw", "haw-US", "he-IL", "he",
+  "hi-IN", "hi", "hr-BA", "hr-HR", "hr", "hsb-DE", "hsb", "hu-HU", "hu",
+  "hy-AM", "hy", "ia-001", "ia", "id-ID", "id", "ig-NG", "ig", "ii-CN", "ii",
+  "in-ID", "in", "is-IS", "is", "it-CH", "it-IT", "it-SM", "it", "it-VA",
+  "iw-IL", "iw", "ja-JP", "ja", "jgo-CM", "jgo", "jmc",
+  "jmc-TZ", "jv-ID", "jv", "kab-DZ", "kab", "ka-GE", "kam-KE", "kam", "ka",
+  "kde", "kde-TZ", "kea-CV", "kea", "khq-ML", "khq", "ki-KE", "ki", "kkj-CM",
+  "kkj", "kk-KZ", "kk", "kl-GL", "kln-KE", "kln", "kl", "km-KH", "km", "kn-IN",
+  "kn", "kok-IN", "ko-KP", "ko-KR", "kok", "ko", "ksb", "ksb-TZ", "ksf-CM",
+  "ksf", "ksh-DE", "ksh", "ks-IN", "ks", "ku-TR", "ku", "kw-GB", "kw", "ky-KG",
+  "ky", "lag", "lag-TZ", "lb-LU", "lb", "lg", "lg-UG", "lkt", "lkt-US", "ln-AO",
+  "ln-CD", "ln-CF", "ln-CG", "ln", "lo-LA", "lo", "lrc-IQ", "lrc-IR", "lrc",
+  "lt-LT", "lt", "lu-CD", "luo-KE", "luo", "lu", "luy-KE", "luy", "lv-LV", "lv",
+  "mas-KE", "mas", "mas-TZ", "mer-KE", "mer", "mfe-MU", "mfe", "mgh-MZ", "mgh",
+  "mg-MG", "mgo-CM", "mgo", "mg", "mi-NZ", "mi", "mk-MK", "mk", "ml-IN", "ml",
+  "mn-MN", "mn", "mo", "mr-IN", "mr", "ms-BN", "ms-MY", "ms-SG", "ms", "mt-MT",
+  "mt", "mua-CM", "mua", "my-MM", "my", "mzn-IR", "mzn", "naq-NA", "naq",
+  "nb-NO", "nb-SJ", "nb", "nds-DE", "nds-NL", "nds", "nd", "nd-ZW", "ne-IN",
+  "ne-NP", "ne", "nl-AW", "nl-BE", "nl-BQ", "nl-CW", "nl-NL", "nl-SR", "nl-SX",
+  "nl", "nmg-CM", "nmg", "nnh-CM", "nnh", "nn-NO", "nn", "no-NY", "no-NO",
+  "no", "nus-SS", "nus", "nyn", "nyn-UG", "om-ET", "om-KE", "om", "or-IN", "or",
+  "os-GE", "os-RU", "os", "pa-Arab-PK", "pa-Arab", "pa-Guru-IN", "pa-Guru",
+  "pa-IN", "pa-PK", "pa", "pl-PL", "pl", "ps-AF", "ps", "pt-AO", "pt-BR",
+  "pt-CH", "pt-CV", "pt-GQ", "pt-GW", "pt-LU", "pt-MO", "pt-MZ", "pt-PT",
+  "pt-ST", "pt-TL", "pt", "qu-BO", "qu-EC", "qu-PE", "qu", "rm-CH", "rm",
+  "rn-BI", "rn", "rof", "rof-TZ", "ro-MD", "root", "ro-RO", "ro", "ru-BY",
+  "ru-KG", "ru-KZ", "ru-MD", "ru-RU", "ru", "ru-UA", "rwk", "rwk-TZ", "rw-RW",
+  "rw", "sah-RU", "sah", "saq-KE", "saq", "sbp", "sbp-TZ", "sd-PK", "sd",
+  "se-FI", "seh-MZ", "seh", "se-NO", "se-SE", "ses-ML", "ses", "se", "sg-CF",
+  "sg", "sh-BA", "sh-CS", "shi-Latn-MA", "shi-Latn", "shi-MA", "shi-Tfng-MA",
+  "shi-Tfng", "shi", "sh", "sh-YU", "si-LK", "si", "sk-SK", "sk", "sl-SI", "sl",
+  "smn-FI", "smn", "sn", "sn-ZW", "so-DJ", "so-ET", "so-KE", "so-SO", "so",
+  "sq-AL", "sq-MK", "sq", "sq-XK", "sr-BA", "sr-CS", "sr-Cyrl-BA", "sr-Cyrl-CS",
+  "sr-Cyrl-ME", "sr-Cyrl-RS", "sr-Cyrl", "sr-Cyrl-XK", "sr-Cyrl-YU",
+  "sr-Latn-BA", "sr-Latn-CS", "sr-Latn-ME", "sr-Latn-RS", "sr-Latn",
+  "sr-Latn-XK", "sr-Latn-YU", "sr-ME", "sr-RS", "sr", "sr-XK", "sr-YU", "sv-AX",
+  "sv-FI", "sv-SE", "sv", "sw-CD", "sw-KE", "sw", "sw-TZ", "sw-UG", "ta-IN",
+  "ta-LK", "ta-MY", "ta-SG", "ta", "te-IN", "teo-KE", "teo", "teo-UG", "te",
+  "tg-TJ", "tg", "th-TH", "th", "ti-ER", "ti-ET", "ti",
+  "tk-TM", "tk", "tl-PH", "tl", "to-TO", "to", "tr-CY", "tr-TR", "tr", "tt-RU",
+  "tt", "twq-NE", "twq", "tzm-MA", "tzm", "ug-CN", "ug", "uk", "uk-UA", "ur-IN",
+  "ur-PK", "ur", "uz-AF", "uz-Arab-AF", "uz-Arab", "uz-Cyrl", "uz-Cyrl-UZ",
+  "uz-Latn", "uz-Latn-UZ", "uz", "uz-UZ", "vai-Latn-LR", "vai-Latn", "vai-LR",
+  "vai", "vai-Vaii-LR", "vai-Vaii", "vi", "vi-VN", "vun", "vun-TZ", "wae-CH",
+  "wae", "wa", "wo-SN", "wo", "xh", "xh-ZA", "xog", "xog-UG", "yav-CM", "yav",
+  "yi-001", "yi", "yo-BJ", "yo-NG", "yo", "yue-CN", "yue-Hans-CN", "yue-Hans",
+  "yue-Hant-HK", "yue-Hant", "yue-HK", "yue", "zgh-MA", "zgh", "zh-CN",
+  "zh-Hans-CN", "zh-Hans-HK", "zh-Hans-MO", "zh-Hans-SG", "zh-Hans",
+  "zh-Hant-HK", "zh-Hant-MO", "zh-Hant-TW", "zh-Hant", "zh-HK", "zh-MO", "zh-SG",
+  "zh-TW", "zh", "zu", "zu-ZA"];
+
+// The test timeout in TSAN so we split into 9 different tests.
+// "Table 5: Components of date and time formats" as in
+// https://ecma-international.org/ecma-402/#sec-datetimeformat-abstracts
+let table5 = [
+  // ["weekday", ["narrow", "short", "long"]],
+  // ["era", ["narrow", "short", "long"]],
+  ["year", ["2-digit", "numeric"]],
+  // ["month", ["2-digit", "numeric", "narrow", "short", "long"]],
+  // ["day", ["2-digit", "numeric"]],
+  // ["hour", ["2-digit", "numeric"]],
+  // ["minute", ["2-digit", "numeric"]],
+  // ["second", ["2-digit", "numeric"]],
+  // ["timeZoneName", ["short", "long"]]
+];
+
+// Test each locale
+for (let loc of locales) {
+  // Test each property in Table 5
+  for (let row of table5) {
+    let prop = row[0];
+    let values = row[1];
+    // Test each value of the property
+    for (let value of values) {
+      let opt = {};
+      opt[prop] = value;
+      let dft = new Intl.DateTimeFormat([loc], opt);
+      let result = dft.resolvedOptions();
+      assertTrue(values.indexOf(result[prop]) >= 0,
+          "Expect new Intl.DateTimeFormat([" + loc + "], {" + prop + ": '" +
+          value + "'}).resolvedOptions()['" + prop + "'] to return one of [" +
+          values + "] but got '" + result[prop] + "'");
+    }
+  }
+}
diff --git a/implementation-contributed/v8/intl/regress-8414.js b/implementation-contributed/v8/intl/regress-8414.js
new file mode 100644
index 0000000000..3e34421636
--- /dev/null
+++ b/implementation-contributed/v8/intl/regress-8414.js
@@ -0,0 +1,806 @@
+// 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 --harmony-intl-list-format --harmony-locale
+
+let locales = [
+  "af-NA",
+  "af",
+  "af-ZA",
+  "agq-CM",
+  "agq",
+  "ak-GH",
+  "ak",
+  "am-ET",
+  "am",
+  "an",
+  "ar-001",
+  "ar-AE",
+  "ar-BH",
+  "ar-DJ",
+  "ar-DZ",
+  "ar-EG",
+  "ar-EH",
+  "ar-ER",
+  "ar-IL",
+  "ar-IQ",
+  "ar-JO",
+  "ar-KM",
+  "ar-KW",
+  "ar-LB",
+  "ar-LY",
+  "ar-MA",
+  "ar-MR",
+  "ar-OM",
+  "ar-PS",
+  "ar-QA",
+  "ar-SA",
+  "ar-SD",
+  "ar-SO",
+  "ar-SS",
+  "ars",
+  "ar-SY",
+  "ar-TD",
+  "ar-TN",
+  "ar",
+  "ar-YE",
+  "asa",
+  "asa-TZ",
+  "as-IN",
+  "ast-ES",
+  "ast",
+  "as",
+  "az-AZ",
+  "az-Cyrl-AZ",
+  "az-Cyrl",
+  "az-Latn-AZ",
+  "az-Latn",
+  "az",
+  "bas-CM",
+  "bas",
+  "be-BY",
+  "bem",
+  "bem-ZM",
+  "be",
+  "bez",
+  "bez-TZ",
+  "bg-BG",
+  "bg",
+  "bm-ML",
+  "bm",
+  "bn-BD",
+  "bn-IN",
+  "bn",
+  "bo-CN",
+  "bo-IN",
+  "bo",
+  "br-FR",
+  "br",
+  "brx-IN",
+  "brx",
+  "bs-BA",
+  "bs-Cyrl-BA",
+  "bs-Cyrl",
+  "bs-Latn-BA",
+  "bs-Latn",
+  "bs",
+  "ca-AD",
+  "ca-ES",
+  "ca-FR",
+  "ca-IT",
+  "ca",
+  "ccp-BD",
+  "ccp-IN",
+  "ccp",
+  "ce-RU",
+  "ce",
+  "cgg",
+  "cgg-UG",
+  "chr",
+  "chr-US",
+  "ckb-IQ",
+  "ckb-IR",
+  "ckb",
+  "cs-CZ",
+  "cs",
+  "cy-GB",
+  "cy",
+  "da-DK",
+  "da-GL",
+  "da",
+  "dav-KE",
+  "dav",
+  "de-AT",
+  "de-BE",
+  "de-CH",
+  "de-DE",
+  "de-IT",
+  "de-LI",
+  "de-LU",
+  "de",
+  "dje-NE",
+  "dje",
+  "dsb-DE",
+  "dsb",
+  "dua-CM",
+  "dua",
+  "dyo-SN",
+  "dyo",
+  "dz-BT",
+  "dz",
+  "ebu-KE",
+  "ebu",
+  "ee-GH",
+  "ee-TG",
+  "ee",
+  "el-CY",
+  "el-GR",
+  "el",
+  "en-001",
+  "en-150",
+  "en-AG",
+  "en-AI",
+  "en-AS",
+  "en-AT",
+  "en-AU",
+  "en-BB",
+  "en-BE",
+  "en-BI",
+  "en-BM",
+  "en-BS",
+  "en-BW",
+  "en-BZ",
+  "en-CA",
+  "en-CC",
+  "en-CH",
+  "en-CK",
+  "en-CM",
+  "en-CX",
+  "en-CY",
+  "en-DE",
+  "en-DG",
+  "en-DK",
+  "en-DM",
+  "en-ER",
+  "en-FI",
+  "en-FJ",
+  "en-FK",
+  "en-FM",
+  "en-GB",
+  "en-GD",
+  "en-GG",
+  "en-GH",
+  "en-GI",
+  "en-GM",
+  "en-GU",
+  "en-GY",
+  "en-HK",
+  "en-IE",
+  "en-IL",
+  "en-IM",
+  "en-IN",
+  "en-IO",
+  "en-JE",
+  "en-JM",
+  "en-KE",
+  "en-KI",
+  "en-KN",
+  "en-KY",
+  "en-LC",
+  "en-LR",
+  "en-LS",
+  "en-MG",
+  "en-MH",
+  "en-MO",
+  "en-MP",
+  "en-MS",
+  "en-MT",
+  "en-MU",
+  "en-MW",
+  "en-MY",
+  "en-NA",
+  "en-NF",
+  "en-NG",
+  "en-NH",
+  "en-NL",
+  "en-NR",
+  "en-NU",
+  "en-NZ",
+  "en-PG",
+  "en-PH",
+  "en-PK",
+  "en-PN",
+  "en-PR",
+  "en-PW",
+  "en-RH",
+  "en-RW",
+  "en-SB",
+  "en-SC",
+  "en-SD",
+  "en-SE",
+  "en-SG",
+  "en-SH",
+  "en-SI",
+  "en-SL",
+  "en-SS",
+  "en-SX",
+  "en-SZ",
+  "en-TC",
+  "en-TK",
+  "en-TO",
+  "en-TT",
+  "en-TV",
+  "en",
+  "en-TZ",
+  "en-UG",
+  "en-UM",
+  "en-US-POSIX",
+  "en-US",
+  "en-VC",
+  "en-VG",
+  "en-VI",
+  "en-VU",
+  "en-WS",
+  "en-ZA",
+  "en-ZM",
+  "en-ZW",
+  "eo",
+  "es-419",
+  "es-AR",
+  "es-BO",
+  "es-BR",
+  "es-BZ",
+  "es-CL",
+  "es-CO",
+  "es-CR",
+  "es-CU",
+  "es-DO",
+  "es-EA",
+  "es-EC",
+  "es-ES",
+  "es-GQ",
+  "es-GT",
+  "es-HN",
+  "es-IC",
+  "es-MX",
+  "es-NI",
+  "es-PA",
+  "es-PE",
+  "es-PH",
+  "es-PR",
+  "es-PY",
+  "es-SV",
+  "es",
+  "es-US",
+  "es-UY",
+  "es-VE",
+  "et-EE",
+  "et",
+  "eu-ES",
+  "eu",
+  "ewo-CM",
+  "ewo",
+  "fa-AF",
+  "fa-IR",
+  "fa",
+  "ff",
+  "fi-FI",
+  "fil-PH",
+  "fil",
+  "fi",
+  "fo-DK",
+  "fo-FO",
+  "fo",
+  "fr-BE",
+  "fr-BF",
+  "fr-BI",
+  "fr-BJ",
+  "fr-BL",
+  "fr-CA",
+  "fr-CD",
+  "fr-CF",
+  "fr-CG",
+  "fr-CH",
+  "fr-CI",
+  "fr-CM",
+  "fr-DJ",
+  "fr-DZ",
+  "fr-FR",
+  "fr-GA",
+  "fr-GF",
+  "fr-GN",
+  "fr-GP",
+  "fr-GQ",
+  "fr-HT",
+  "fr-KM",
+  "fr-LU",
+  "fr-MA",
+  "fr-MC",
+  "fr-MF",
+  "fr-MG",
+  "fr-ML",
+  "fr-MQ",
+  "fr-MR",
+  "fr-MU",
+  "fr-NC",
+  "fr-NE",
+  "fr-PF",
+  "fr-PM",
+  "fr-RE",
+  "fr-RW",
+  "fr-SC",
+  "fr-SN",
+  "fr-SY",
+  "fr-TD",
+  "fr-TG",
+  "fr-TN",
+  "fr",
+  "fr-VU",
+  "fr-WF",
+  "fr-YT",
+  "fur-IT",
+  "fur",
+  "fy-NL",
+  "fy",
+  "ga-IE",
+  "ga",
+  "gd-GB",
+  "gd",
+  "gl-ES",
+  "gl",
+  "gsw-CH",
+  "gsw-FR",
+  "gsw-LI",
+  "gsw",
+  "gu-IN",
+  "gu",
+  "guz-KE",
+  "guz",
+  "gv-IM",
+  "gv",
+  "ha-GH",
+  "ha-NE",
+  "ha-NG",
+  "ha",
+  "haw",
+  "haw-US",
+  "he-IL",
+  "he",
+  "hi-IN",
+  "hi",
+  "hr-BA",
+  "hr-HR",
+  "hr",
+  "hsb-DE",
+  "hsb",
+  "hu-HU",
+  "hu",
+  "hy-AM",
+  "hy",
+  "ia-001",
+  "ia",
+  "id-ID",
+  "id",
+  "ig-NG",
+  "ig",
+  "ii-CN",
+  "ii",
+  "in-ID",
+  "in",
+  "is-IS",
+  "is",
+  "it-CH",
+  "it-IT",
+  "it-SM",
+  "it",
+  "it-VA",
+  "iw-IL",
+  "iw",
+  "ja-JP",
+  "ja",
+  "jgo-CM",
+  "jgo",
+  "jmc",
+  "jmc-TZ",
+  "jv-ID",
+  "jv",
+  "kab-DZ",
+  "kab",
+  "ka-GE",
+  "kam-KE",
+  "kam",
+  "ka",
+  "kde",
+  "kde-TZ",
+  "kea-CV",
+  "kea",
+  "khq-ML",
+  "khq",
+  "ki-KE",
+  "ki",
+  "kkj-CM",
+  "kkj",
+  "kk-KZ",
+  "kk",
+  "kl-GL",
+  "kln-KE",
+  "kln",
+  "kl",
+  "km-KH",
+  "km",
+  "kn-IN",
+  "kn",
+  "kok-IN",
+  "ko-KP",
+  "ko-KR",
+  "kok",
+  "ko",
+  "ksb",
+  "ksb-TZ",
+  "ksf-CM",
+  "ksf",
+  "ksh-DE",
+  "ksh",
+  "ks-IN",
+  "ks",
+  "ku-TR",
+  "ku",
+  "kw-GB",
+  "kw",
+  "ky-KG",
+  "ky",
+  "lag",
+  "lag-TZ",
+  "lb-LU",
+  "lb",
+  "lg",
+  "lg-UG",
+  "lkt",
+  "lkt-US",
+  "ln-AO",
+  "ln-CD",
+  "ln-CF",
+  "ln-CG",
+  "ln",
+  "lo-LA",
+  "lo",
+  "lrc-IQ",
+  "lrc-IR",
+  "lrc",
+  "lt-LT",
+  "lt",
+  "lu-CD",
+  "luo-KE",
+  "luo",
+  "lu",
+  "luy-KE",
+  "luy",
+  "lv-LV",
+  "lv",
+  "mas-KE",
+  "mas",
+  "mas-TZ",
+  "mer-KE",
+  "mer",
+  "mfe-MU",
+  "mfe",
+  "mgh-MZ",
+  "mgh",
+  "mg-MG",
+  "mgo-CM",
+  "mgo",
+  "mg",
+  "mi-NZ",
+  "mi",
+  "mk-MK",
+  "mk",
+  "ml-IN",
+  "ml",
+  "mn-MN",
+  "mn",
+  "mo",
+  "mr-IN",
+  "mr",
+  "ms-BN",
+  "ms-MY",
+  "ms-SG",
+  "ms",
+  "mt-MT",
+  "mt",
+  "mua-CM",
+  "mua",
+  "my-MM",
+  "my",
+  "mzn-IR",
+  "mzn",
+  "naq-NA",
+  "naq",
+  "nb-NO",
+  "nb-SJ",
+  "nb",
+  "nds-DE",
+  "nds-NL",
+  "nds",
+  "nd",
+  "nd-ZW",
+  "ne-IN",
+  "ne-NP",
+  "ne",
+  "nl-AW",
+  "nl-BE",
+  "nl-BQ",
+  "nl-CW",
+  "nl-NL",
+  "nl-SR",
+  "nl-SX",
+  "nl",
+  "nmg-CM",
+  "nmg",
+  "nnh-CM",
+  "nnh",
+  "nn-NO",
+  "nn",
+  "no-NY",
+  "no-NO",
+  "no",
+  "nus-SS",
+  "nus",
+  "nyn",
+  "nyn-UG",
+  "om-ET",
+  "om-KE",
+  "om",
+  "or-IN",
+  "or",
+  "os-GE",
+  "os-RU",
+  "os",
+  "pa-Arab-PK",
+  "pa-Arab",
+  "pa-Guru-IN",
+  "pa-Guru",
+  "pa-IN",
+  "pa-PK",
+  "pa",
+  "pl-PL",
+  "pl",
+  "ps-AF",
+  "ps",
+  "pt-AO",
+  "pt-BR",
+  "pt-CH",
+  "pt-CV",
+  "pt-GQ",
+  "pt-GW",
+  "pt-LU",
+  "pt-MO",
+  "pt-MZ",
+  "pt-PT",
+  "pt-ST",
+  "pt-TL",
+  "pt",
+  "qu-BO",
+  "qu-EC",
+  "qu-PE",
+  "qu",
+  "rm-CH",
+  "rm",
+  "rn-BI",
+  "rn",
+  "rof",
+  "rof-TZ",
+  "ro-MD",
+  "root",
+  "ro-RO",
+  "ro",
+  "ru-BY",
+  "ru-KG",
+  "ru-KZ",
+  "ru-MD",
+  "ru-RU",
+  "ru",
+  "ru-UA",
+  "rwk",
+  "rwk-TZ",
+  "rw-RW",
+  "rw",
+  "sah-RU",
+  "sah",
+  "saq-KE",
+  "saq",
+  "sbp",
+  "sbp-TZ",
+  "sd-PK",
+  "sd",
+  "se-FI",
+  "seh-MZ",
+  "seh",
+  "se-NO",
+  "se-SE",
+  "ses-ML",
+  "ses",
+  "se",
+  "sg-CF",
+  "sg",
+  "sh-BA",
+  "sh-CS",
+  "shi-Latn-MA",
+  "shi-Latn",
+  "shi-MA",
+  "shi-Tfng-MA",
+  "shi-Tfng",
+  "shi",
+  "sh",
+  "sh-YU",
+  "si-LK",
+  "si",
+  "sk-SK",
+  "sk",
+  "sl-SI",
+  "sl",
+  "smn-FI",
+  "smn",
+  "sn",
+  "sn-ZW",
+  "so-DJ",
+  "so-ET",
+  "so-KE",
+  "so-SO",
+  "so",
+  "sq-AL",
+  "sq-MK",
+  "sq",
+  "sq-XK",
+  "sr-BA",
+  "sr-CS",
+  "sr-Cyrl-BA",
+  "sr-Cyrl-CS",
+  "sr-Cyrl-ME",
+  "sr-Cyrl-RS",
+  "sr-Cyrl",
+  "sr-Cyrl-XK",
+  "sr-Cyrl-YU",
+  "sr-Latn-BA",
+  "sr-Latn-CS",
+  "sr-Latn-ME",
+  "sr-Latn-RS",
+  "sr-Latn",
+  "sr-Latn-XK",
+  "sr-Latn-YU",
+  "sr-ME",
+  "sr-RS",
+  "sr",
+  "sr-XK",
+  "sr-YU",
+  "sv-AX",
+  "sv-FI",
+  "sv-SE",
+  "sv",
+  "sw-CD",
+  "sw-KE",
+  "sw",
+  "sw-TZ",
+  "sw-UG",
+  "ta-IN",
+  "ta-LK",
+  "ta-MY",
+  "ta-SG",
+  "ta",
+  "te-IN",
+  "teo-KE",
+  "teo",
+  "teo-UG",
+  "te",
+  "tg-TJ",
+  "tg",
+  "th-TH",
+  "th",
+  "ti-ER",
+  "ti-ET",
+  "ti",
+  "tk-TM",
+  "tk",
+  "tl-PH",
+  "tl",
+  "to-TO",
+  "to",
+  "tr-CY",
+  "tr-TR",
+  "tr",
+  "tt-RU",
+  "tt",
+  "twq-NE",
+  "twq",
+  "tzm-MA",
+  "tzm",
+  "ug-CN",
+  "ug",
+  "uk",
+  "uk-UA",
+  "ur-IN",
+  "ur-PK",
+  "ur",
+  "uz-AF",
+  "uz-Arab-AF",
+  "uz-Arab",
+  "uz-Cyrl",
+  "uz-Cyrl-UZ",
+  "uz-Latn",
+  "uz-Latn-UZ",
+  "uz",
+  "uz-UZ",
+  "vai-Latn-LR",
+  "vai-Latn",
+  "vai-LR",
+  "vai",
+  "vai-Vaii-LR",
+  "vai-Vaii",
+  "vi",
+  "vi-VN",
+  "vun",
+  "vun-TZ",
+  "wae-CH",
+  "wae",
+  "wa",
+  "wo-SN",
+  "wo",
+  "xh",
+  "xh-ZA",
+  "xog",
+  "xog-UG",
+  "yav-CM",
+  "yav",
+  "yi-001",
+  "yi",
+  "yo-BJ",
+  "yo-NG",
+  "yo",
+  "yue-CN",
+  "yue-Hans-CN",
+  "yue-Hans",
+  "yue-Hant-HK",
+  "yue-Hant",
+  "yue-HK",
+  "yue",
+  "zgh-MA",
+  "zgh",
+  "zh-CN",
+  "zh-Hans-CN",
+  "zh-Hans-HK",
+  "zh-Hans-MO",
+  "zh-Hans-SG",
+  "zh-Hans",
+  "zh-Hant-HK",
+  "zh-Hant-MO",
+  "zh-Hant-TW",
+  "zh-Hant",
+  "zh-HK",
+  "zh-MO",
+  "zh-SG",
+  "zh-TW",
+  "zh",
+  "zu",
+  "zu-ZA"
+];
+
+var intlObjectNames = [
+  "DateTimeFormat",
+  "NumberFormat",
+  "Collator",
+  "v8BreakIterator",
+  "PluralRules",
+  "Locale",
+  "ListFormat",
+  "Segmenter",
+  "RelativeTimeFormat"
+];
+
+for (let loc of locales) {
+  for (let constructor of intlObjectNames) {
+    let msg = `new Intl.${constructor}(${loc})`;
+    print(msg);
+    let obj = new Intl[constructor](loc);
+    assertNotNull(obj, msg + ' should not be null');
+  }
+}
diff --git a/implementation-contributed/v8/mjsunit/arrow-with.js b/implementation-contributed/v8/mjsunit/arrow-with.js
new file mode 100644
index 0000000000..a1f97afa38
--- /dev/null
+++ b/implementation-contributed/v8/mjsunit/arrow-with.js
@@ -0,0 +1,7 @@
+// 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 f() { with ({}) { return (()=>this)() } }
+var o = {}
+assertEquals(o, f.call(o))
diff --git a/implementation-contributed/v8/mjsunit/compiler/osr-assert.js b/implementation-contributed/v8/mjsunit/compiler/osr-assert.js
index 94b901fd4f..c67ad536ad 100644
--- a/implementation-contributed/v8/mjsunit/compiler/osr-assert.js
+++ b/implementation-contributed/v8/mjsunit/compiler/osr-assert.js
@@ -25,17 +25,20 @@
 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
-// Flags: --use-osr
+// Flags: --use-osr --allow-natives-syntax
 
 function f(x, b, c) {
-  var outer = 1000000;
+  var outer = 10;
   var a = 1;
   while (outer > 0) {
     a = a + 5;
     assertEquals(b + 1, c);
     outer--;
+    if (outer === 5) {
+      %OptimizeOsr();
+    }
   }
   return a + 4;
 }
 
-assertEquals(5000005, f(5, "122", "1221"));
+assertEquals(55, f(5, "122", "1221"));
diff --git a/implementation-contributed/v8/mjsunit/es9/object-spread-ic.js b/implementation-contributed/v8/mjsunit/es9/object-spread-ic.js
index d76ffd4eb8..55d60f2cf8 100644
--- a/implementation-contributed/v8/mjsunit/es9/object-spread-ic.js
+++ b/implementation-contributed/v8/mjsunit/es9/object-spread-ic.js
@@ -99,3 +99,25 @@
   // Megamorphic
   assertEquals({ boop: 1 }, f({ boop: 1 }));
 })();
+
+// There are 2 paths in CloneObjectIC's handler which need to handle double
+// fields specially --- in object properties, and copying the property array.
+function testMutableInlineProperties() {
+  function inobject() { "use strict"; this.x = 1.1; }
+  const src = new inobject();
+  const x0 = src.x;
+  const clone = { ...src, x: x0 + 1 };
+  assertEquals(x0, src.x);
+  assertEquals({ x: 2.1 }, clone);
+}
+testMutableInlineProperties()
+
+function testMutableOutOfLineProperties() {
+  const src = { a: 1, b: 2, c: 3 };
+  src.x = 2.3;
+  const x0 = src.x;
+  const clone = { ...src, x: x0 + 1 };
+  assertEquals(x0, src.x);
+  assertEquals({ a: 1, b: 2, c: 3, x: 3.3 }, clone);
+}
+testMutableOutOfLineProperties();
diff --git a/implementation-contributed/v8/mjsunit/mjsunit.status b/implementation-contributed/v8/mjsunit/mjsunit.status
index a6d80b0553..e279bc8b50 100644
--- a/implementation-contributed/v8/mjsunit/mjsunit.status
+++ b/implementation-contributed/v8/mjsunit/mjsunit.status
@@ -86,7 +86,7 @@
 
   # Issue 488: this test sometimes times out.
   # TODO(arm): This seems to flush out a bug on arm with simulator.
-  'array-constructor': [PASS, SLOW, ['arch == arm and simulator == True', SKIP]],
+  'array-constructor': [PASS, SLOW, ['arch == arm and simulator_run == True', SKIP]],
 
   # Very slow test
   'regress/regress-crbug-808192' : [PASS, SLOW, NO_VARIANTS, ['mode == debug or arch == arm or arch == arm64 or arch == android_arm or arch == android_arm64 or arch == mipsel or arch == mips64el or arch == mips64 or arch == mips or arch == s390 or arch == s390x or arch == ppc or arch == ppc64', SKIP]],
@@ -368,7 +368,6 @@
   'array-splice': [PASS, SLOW],
   'bit-not': [PASS, SLOW],
   'compiler/alloc-number': [PASS, SLOW],
-  'compiler/osr-assert': [PASS, SLOW],
   'compiler/osr-with-args': [PASS, SLOW],
   'generated-transition-stub': [PASS, SLOW],
   'json2': [PASS, SLOW],
@@ -774,8 +773,8 @@
   'regress/regress-91008': [PASS, SLOW],
   'harmony/regexp-property-lu-ui': [PASS, SLOW],
   'whitespaces': [PASS, SLOW],
-  'wasm/atomics-stress': [PASS, SLOW],
-  'wasm/atomics64-stress': [PASS, SLOW],
+  'wasm/atomics-stress': [SKIP],
+  'wasm/atomics64-stress': [SKIP],
 }],  # 'simulator_run and (arch == ppc or arch == ppc64 or arch == s390 or arch == s390x)'
 
 ##############################################################################
-- 
GitLab