diff --git a/test262/es2015_tests.txt b/test262/es2015_tests.txt old mode 100644 new mode 100755 index 01eae6e32b4f1a921d24a66612b8951e51241b12..92acde0ddc1283cd60ae04c96534fa89c89b5191 --- a/test262/es2015_tests.txt +++ b/test262/es2015_tests.txt @@ -4547,4 +4547,684 @@ built-ins/encodeURI/S15.1.3.3_A5.4.js built-ins/encodeURI/S15.1.3.3_A5.5.js built-ins/encodeURI/S15.1.3.3_A5.6.js built-ins/encodeURI/S15.1.3.3_A5.7.js -built-ins/encodeURI/S15.1.3.3_A6_T1.js \ No newline at end of file +built-ins/encodeURI/S15.1.3.3_A6_T1.js +intl402/NumberFormat/casing-numbering-system-options.js +intl402/NumberFormat/builtin.js +intl402/NumberFormat/constructor-default-value.js +intl402/NumberFormat/constructor-options-throwing-getters.js +intl402/NumberFormat/test-option-currency.js +intl402/NumberFormat/constructor-locales-get-tostring.js +intl402/NumberFormat/test-option-style.js +intl402/NumberFormat/currencyDisplay-unit.js +intl402/NumberFormat/this-value-ignored.js +intl402/NumberFormat/currency-digits.js +intl402/NumberFormat/supportedLocalesOf/builtin.js +intl402/NumberFormat/supportedLocalesOf/length.js +intl402/NumberFormat/supportedLocalesOf/basic.js +intl402/NumberFormat/supportedLocalesOf/name.js +intl402/NumberFormat/supportedLocalesOf/prop-desc.js +intl402/NumberFormat/supportedLocalesOf/taint-Object-prototype.js +intl402/NumberFormat/numbering-system-options.js +intl402/NumberFormat/length.js +intl402/NumberFormat/constructor-compactDisplay-compact.js +intl402/NumberFormat/constructor-signDisplay.js +intl402/NumberFormat/legacy-regexp-statics-not-modified.js +intl402/NumberFormat/dft-currency-mnfd-range-check-mxfd.js +intl402/NumberFormat/intl-legacy-constructed-symbol-on-unwrap.js +intl402/NumberFormat/throws-for-currency-style-without-currency-option.js +intl402/NumberFormat/default-options-object-prototype.js +intl402/NumberFormat/constructor-locales-arraylike.js +intl402/NumberFormat/instance-proto-and-extensible.js +intl402/NumberFormat/constructor-locales-string.js +intl402/NumberFormat/test-option-useGrouping.js +intl402/NumberFormat/currency-code-well-formed.js +intl402/NumberFormat/constructor-unitDisplay.js +intl402/NumberFormat/constructor-locales-hasproperty.js +intl402/NumberFormat/name.js +intl402/NumberFormat/prop-desc.js +intl402/NumberFormat/constructor-notation.js +intl402/NumberFormat/constructor-options-toobject.js +intl402/NumberFormat/significant-digits-options-get-sequence.js +intl402/NumberFormat/taint-Object-prototype.js +intl402/NumberFormat/prototype/builtin.js +intl402/NumberFormat/prototype/format/format-fraction-digits.js +intl402/NumberFormat/prototype/format/format-non-finite-numbers.js +intl402/NumberFormat/prototype/format/format-negative-numbers.js +intl402/NumberFormat/prototype/format/builtin.js +intl402/NumberFormat/prototype/format/notation-compact-ko-KR.js +intl402/NumberFormat/prototype/format/signDisplay-de-DE.js +intl402/NumberFormat/prototype/format/units.js +intl402/NumberFormat/prototype/format/signDisplay-rounding.js +intl402/NumberFormat/prototype/format/format-function-length.js +intl402/NumberFormat/prototype/format/engineering-scientific-zh-TW.js +intl402/NumberFormat/prototype/format/signDisplay-currency-zh-TW.js +intl402/NumberFormat/prototype/format/default-value.js +intl402/NumberFormat/prototype/format/signDisplay-zh-TW.js +intl402/NumberFormat/prototype/format/engineering-scientific-ko-KR.js +intl402/NumberFormat/prototype/format/length.js +intl402/NumberFormat/prototype/format/notation-compact-ja-JP.js +intl402/NumberFormat/prototype/format/notation-compact-de-DE.js +intl402/NumberFormat/prototype/format/value-tonumber.js +intl402/NumberFormat/prototype/format/format-function-name.js +intl402/NumberFormat/prototype/format/bound-to-numberformat-instance.js +intl402/NumberFormat/prototype/format/engineering-scientific-de-DE.js +intl402/NumberFormat/prototype/format/format-significant-digits.js +intl402/NumberFormat/prototype/format/signDisplay-en-US.js +intl402/NumberFormat/prototype/format/this-value-not-numberformat.js +intl402/NumberFormat/prototype/format/signDisplay-currency-ko-KR.js +intl402/NumberFormat/prototype/format/units-invalid.js +intl402/NumberFormat/prototype/format/engineering-scientific-en-US.js +intl402/NumberFormat/prototype/format/numbering-systems.js +intl402/NumberFormat/prototype/format/unit-de-DE.js +intl402/NumberFormat/prototype/format/name.js +intl402/NumberFormat/prototype/format/prop-desc.js +intl402/NumberFormat/prototype/format/signDisplay-currency-en-US.js +intl402/NumberFormat/prototype/format/notation-compact-en-US.js +intl402/NumberFormat/prototype/format/unit-en-US.js +intl402/NumberFormat/prototype/format/signDisplay-ja-JP.js +intl402/NumberFormat/prototype/format/value-arg-coerced-to-number.js +intl402/NumberFormat/prototype/format/unit-ja-JP.js +intl402/NumberFormat/prototype/format/signDisplay-currency-ja-JP.js +intl402/NumberFormat/prototype/format/signDisplay-ko-KR.js +intl402/NumberFormat/prototype/format/engineering-scientific-ja-JP.js +intl402/NumberFormat/prototype/format/format-function-builtin.js +intl402/NumberFormat/prototype/format/unit-zh-TW.js +intl402/NumberFormat/prototype/format/format-fraction-digits-precision.js +intl402/NumberFormat/prototype/format/signDisplay-currency-de-DE.js +intl402/NumberFormat/prototype/format/format-significant-digits-precision.js +intl402/NumberFormat/prototype/format/notation-compact-zh-TW.js +intl402/NumberFormat/prototype/format/percent-formatter.js +intl402/NumberFormat/prototype/format/unit-ko-KR.js +intl402/NumberFormat/prototype/constructor/value.js +intl402/NumberFormat/prototype/constructor/prop-desc.js +intl402/NumberFormat/prototype/resolvedOptions/builtin.js +intl402/NumberFormat/prototype/resolvedOptions/length.js +intl402/NumberFormat/prototype/resolvedOptions/basic.js +intl402/NumberFormat/prototype/resolvedOptions/order.js +intl402/NumberFormat/prototype/resolvedOptions/this-value-not-numberformat.js +intl402/NumberFormat/prototype/resolvedOptions/name.js +intl402/NumberFormat/prototype/resolvedOptions/prop-desc.js +intl402/NumberFormat/prototype/resolvedOptions/compactDisplay.js +intl402/NumberFormat/prototype/prop-desc.js +intl402/NumberFormat/prototype/toStringTag/configurable.js +intl402/NumberFormat/prototype/toStringTag/prop-desc.js +intl402/NumberFormat/prototype/formatToParts/notation-compact-ko-KR.js +intl402/NumberFormat/prototype/formatToParts/signDisplay-de-DE.js +intl402/NumberFormat/prototype/formatToParts/engineering-scientific-zh-TW.js +intl402/NumberFormat/prototype/formatToParts/signDisplay-currency-zh-TW.js +intl402/NumberFormat/prototype/formatToParts/signDisplay-zh-TW.js +intl402/NumberFormat/prototype/formatToParts/engineering-scientific-ko-KR.js +intl402/NumberFormat/prototype/formatToParts/length.js +intl402/NumberFormat/prototype/formatToParts/notation-compact-ja-JP.js +intl402/NumberFormat/prototype/formatToParts/notation-compact-de-DE.js +intl402/NumberFormat/prototype/formatToParts/value-tonumber.js +intl402/NumberFormat/prototype/formatToParts/engineering-scientific-de-DE.js +intl402/NumberFormat/prototype/formatToParts/signDisplay-en-US.js +intl402/NumberFormat/prototype/formatToParts/this-value-not-numberformat.js +intl402/NumberFormat/prototype/formatToParts/signDisplay-currency-ko-KR.js +intl402/NumberFormat/prototype/formatToParts/engineering-scientific-en-US.js +intl402/NumberFormat/prototype/formatToParts/main.js +intl402/NumberFormat/prototype/formatToParts/unit-de-DE.js +intl402/NumberFormat/prototype/formatToParts/name.js +intl402/NumberFormat/prototype/formatToParts/prop-desc.js +intl402/NumberFormat/prototype/formatToParts/signDisplay-currency-en-US.js +intl402/NumberFormat/prototype/formatToParts/default-parameter.js +intl402/NumberFormat/prototype/formatToParts/notation-compact-en-US.js +intl402/NumberFormat/prototype/formatToParts/unit-en-US.js +intl402/NumberFormat/prototype/formatToParts/signDisplay-ja-JP.js +intl402/NumberFormat/prototype/formatToParts/percent-en-US.js +intl402/NumberFormat/prototype/formatToParts/unit-ja-JP.js +intl402/NumberFormat/prototype/formatToParts/signDisplay-currency-ja-JP.js +intl402/NumberFormat/prototype/formatToParts/signDisplay-ko-KR.js +intl402/NumberFormat/prototype/formatToParts/engineering-scientific-ja-JP.js +intl402/NumberFormat/prototype/formatToParts/unit-zh-TW.js +intl402/NumberFormat/prototype/formatToParts/signDisplay-currency-de-DE.js +intl402/NumberFormat/prototype/formatToParts/notation-compact-zh-TW.js +intl402/NumberFormat/prototype/formatToParts/unit-ko-KR.js +intl402/NumberFormat/prototype/formatToParts/unit.js +intl402/NumberFormat/prototype/this-value-numberformat-prototype.js +intl402/NumberFormat/default-minimum-singificant-digits.js +intl402/NumberFormat/intl-legacy-constructed-symbol.js +intl402/NumberFormat/constructor-unit.js +intl402/NumberFormat/constructor-compactDisplay-no-compact.js +intl402/NumberFormat/test-option-currencyDisplay.js +intl402/NumberFormat/proto-from-ctor-realm.js +intl402/NumberFormat/constructor-options-numberingSystem-invalid.js +intl402/NumberFormat/ignore-invalid-unicode-ext-values.js +intl402/NumberFormat/currency-code-invalid.js +intl402/NumberFormat/constructor-locales-toobject.js +intl402/NumberFormat/fraction-digit-options-read-once.js +intl402/NumberFormat/subclassing.js +intl402/NumberFormat/test-option-localeMatcher.js +intl402/NumberFormat/constructor-numberingSystem-order.js +intl402/NumberFormat/constructor-order.js +intl402/NumberFormat/style-unit.js +intl402/supportedLocalesOf-locales-arg-coered-to-object.js +intl402/RelativeTimeFormat/instance/prototype.js +intl402/RelativeTimeFormat/instance/extensibility.js +intl402/RelativeTimeFormat/constructor/prototype.js +intl402/RelativeTimeFormat/constructor/supportedLocalesOf/locales-invalid.js +intl402/RelativeTimeFormat/constructor/supportedLocalesOf/result-type.js +intl402/RelativeTimeFormat/constructor/supportedLocalesOf/length.js +intl402/RelativeTimeFormat/constructor/supportedLocalesOf/basic.js +intl402/RelativeTimeFormat/constructor/supportedLocalesOf/branding.js +intl402/RelativeTimeFormat/constructor/supportedLocalesOf/name.js +intl402/RelativeTimeFormat/constructor/supportedLocalesOf/prop-desc.js +intl402/RelativeTimeFormat/constructor/supportedLocalesOf/options-null.js +intl402/RelativeTimeFormat/constructor/supportedLocalesOf/options-undefined.js +intl402/RelativeTimeFormat/constructor/supportedLocalesOf/options-localeMatcher-invalid.js +intl402/RelativeTimeFormat/constructor/supportedLocalesOf/options-toobject.js +intl402/RelativeTimeFormat/constructor/length.js +intl402/RelativeTimeFormat/constructor/constructor/locales-invalid.js +intl402/RelativeTimeFormat/constructor/constructor/options-numeric-valid.js +intl402/RelativeTimeFormat/constructor/constructor/options-order.js +intl402/RelativeTimeFormat/constructor/constructor/options-numberingSystem-invalid.js +intl402/RelativeTimeFormat/constructor/constructor/options-throwing-getters.js +intl402/RelativeTimeFormat/constructor/constructor/options-style-invalid.js +intl402/RelativeTimeFormat/constructor/constructor/options-style-valid.js +intl402/RelativeTimeFormat/constructor/constructor/options-toobject-prototype.js +intl402/RelativeTimeFormat/constructor/constructor/options-numeric-invalid.js +intl402/RelativeTimeFormat/constructor/constructor/options-undefined.js +intl402/RelativeTimeFormat/constructor/constructor/options-proto.js +intl402/RelativeTimeFormat/constructor/constructor/options-localeMatcher-invalid.js +intl402/RelativeTimeFormat/constructor/constructor/proto-from-ctor-realm.js +intl402/RelativeTimeFormat/constructor/constructor/newtarget-undefined.js +intl402/RelativeTimeFormat/constructor/constructor/subclassing.js +intl402/RelativeTimeFormat/constructor/constructor/options-invalid.js +intl402/RelativeTimeFormat/constructor/constructor/options-numberingSystem-valid.js +intl402/RelativeTimeFormat/constructor/constructor/options-toobject.js +intl402/RelativeTimeFormat/constructor/constructor/locales-valid.js +intl402/RelativeTimeFormat/constructor/name.js +intl402/RelativeTimeFormat/constructor/prop-desc.js +intl402/RelativeTimeFormat/prototype/format/en-us-numeric-auto.js +intl402/RelativeTimeFormat/prototype/format/length.js +intl402/RelativeTimeFormat/prototype/format/value-tonumber.js +intl402/RelativeTimeFormat/prototype/format/value-non-finite.js +intl402/RelativeTimeFormat/prototype/format/pl-pl-style-long.js +intl402/RelativeTimeFormat/prototype/format/unit-plural.js +intl402/RelativeTimeFormat/prototype/format/pl-pl-style-narrow.js +intl402/RelativeTimeFormat/prototype/format/branding.js +intl402/RelativeTimeFormat/prototype/format/pl-pl-style-short.js +intl402/RelativeTimeFormat/prototype/format/en-us-numeric-always.js +intl402/RelativeTimeFormat/prototype/format/name.js +intl402/RelativeTimeFormat/prototype/format/prop-desc.js +intl402/RelativeTimeFormat/prototype/format/value-symbol.js +intl402/RelativeTimeFormat/prototype/format/unit-invalid.js +intl402/RelativeTimeFormat/prototype/format/en-us-style-short.js +intl402/RelativeTimeFormat/prototype/constructor/prop-desc.js +intl402/RelativeTimeFormat/prototype/resolvedOptions/caching.js +intl402/RelativeTimeFormat/prototype/resolvedOptions/length.js +intl402/RelativeTimeFormat/prototype/resolvedOptions/type.js +intl402/RelativeTimeFormat/prototype/resolvedOptions/branding.js +intl402/RelativeTimeFormat/prototype/resolvedOptions/order.js +intl402/RelativeTimeFormat/prototype/resolvedOptions/name.js +intl402/RelativeTimeFormat/prototype/resolvedOptions/prop-desc.js +intl402/RelativeTimeFormat/prototype/prop-desc.js +intl402/RelativeTimeFormat/prototype/toStringTag/toStringTag.js +intl402/RelativeTimeFormat/prototype/toStringTag/toString.js +intl402/RelativeTimeFormat/prototype/formatToParts/result-type.js +intl402/RelativeTimeFormat/prototype/formatToParts/en-us-numeric-auto.js +intl402/RelativeTimeFormat/prototype/formatToParts/length.js +intl402/RelativeTimeFormat/prototype/formatToParts/value-tonumber.js +intl402/RelativeTimeFormat/prototype/formatToParts/value-non-finite.js +intl402/RelativeTimeFormat/prototype/formatToParts/pl-pl-style-long.js +intl402/RelativeTimeFormat/prototype/formatToParts/unit-plural.js +intl402/RelativeTimeFormat/prototype/formatToParts/pl-pl-style-narrow.js +intl402/RelativeTimeFormat/prototype/formatToParts/branding.js +intl402/RelativeTimeFormat/prototype/formatToParts/pl-pl-style-short.js +intl402/RelativeTimeFormat/prototype/formatToParts/en-us-numeric-always.js +intl402/RelativeTimeFormat/prototype/formatToParts/name.js +intl402/RelativeTimeFormat/prototype/formatToParts/prop-desc.js +intl402/RelativeTimeFormat/prototype/formatToParts/value-symbol.js +intl402/RelativeTimeFormat/prototype/formatToParts/unit-invalid.js +intl402/RelativeTimeFormat/prototype/formatToParts/en-us-style-short.js +intl402/PluralRules/builtin.js +intl402/PluralRules/constructor-options-throwing-getters.js +intl402/PluralRules/supportedLocalesOf/length.js +intl402/PluralRules/supportedLocalesOf/main.js +intl402/PluralRules/supportedLocalesOf/name.js +intl402/PluralRules/supportedLocalesOf/prop-desc.js +intl402/PluralRules/supportedLocalesOf/arguments.js +intl402/PluralRules/supportedLocalesOf/supportedLocalesOf.js +intl402/PluralRules/length.js +intl402/PluralRules/undefined-newtarget-throws.js +intl402/PluralRules/default-options-object-prototype.js +intl402/PluralRules/name.js +intl402/PluralRules/prop-desc.js +intl402/PluralRules/prototype/prototype.js +intl402/PluralRules/prototype/select/length.js +intl402/PluralRules/prototype/select/tainting.js +intl402/PluralRules/prototype/select/name.js +intl402/PluralRules/prototype/select/prop-desc.js +intl402/PluralRules/prototype/select/non-finite.js +intl402/PluralRules/prototype/constructor/main.js +intl402/PluralRules/prototype/constructor/prop-desc.js +intl402/PluralRules/prototype/resolvedOptions/length.js +intl402/PluralRules/prototype/resolvedOptions/order.js +intl402/PluralRules/prototype/resolvedOptions/name.js +intl402/PluralRules/prototype/resolvedOptions/prop-desc.js +intl402/PluralRules/prototype/resolvedOptions/properties.js +intl402/PluralRules/prototype/resolvedOptions/builtins.js +intl402/PluralRules/prototype/resolvedOptions/pluralCategories.js +intl402/PluralRules/prototype/toStringTag/toStringTag.js +intl402/PluralRules/prototype/toStringTag/toString.js +intl402/PluralRules/prototype/toStringTag/toString-changed-tag.js +intl402/PluralRules/prototype/toStringTag/toString-removed-tag.js +intl402/PluralRules/prototype/properties.js +intl402/PluralRules/prototype/builtins.js +intl402/PluralRules/prototype/bind.js +intl402/PluralRules/proto-from-ctor-realm.js +intl402/PluralRules/internals.js +intl402/PluralRules/can-be-subclassed.js +intl402/Locale/constructor-options-numeric-undefined.js +intl402/Locale/getters-missing.js +intl402/Locale/constructor-non-iana-canon.js +intl402/Locale/constructor-options-throwing-getters.js +intl402/Locale/getters.js +intl402/Locale/invalid-tag-throws-symbol.js +intl402/Locale/constructor-options-language-invalid.js +intl402/Locale/constructor-getter-order.js +intl402/Locale/constructor-options-language-grandfathered.js +intl402/Locale/function-prototype.js +intl402/Locale/length.js +intl402/Locale/constructor-newtarget-undefined.js +intl402/Locale/instance.js +intl402/Locale/constructor-options-language-valid.js +intl402/Locale/constructor-options-hourcycle-invalid.js +intl402/Locale/constructor-options-casefirst-valid.js +intl402/Locale/constructor-options-script-valid.js +intl402/Locale/invalid-tag-throws-undefined.js +intl402/Locale/extensions-grandfathered.js +intl402/Locale/name.js +intl402/Locale/prop-desc.js +intl402/Locale/constructor-locale-object.js +intl402/Locale/likely-subtags.js +intl402/Locale/getters-grandfathered.js +intl402/Locale/constructor-options-region-invalid.js +intl402/Locale/prototype/script/branding.js +intl402/Locale/prototype/script/name.js +intl402/Locale/prototype/script/prop-desc.js +intl402/Locale/prototype/constructor/prop-desc.js +intl402/Locale/prototype/caseFirst/branding.js +intl402/Locale/prototype/caseFirst/name.js +intl402/Locale/prototype/caseFirst/prop-desc.js +intl402/Locale/prototype/language/branding.js +intl402/Locale/prototype/language/name.js +intl402/Locale/prototype/language/prop-desc.js +intl402/Locale/prototype/region/branding.js +intl402/Locale/prototype/region/name.js +intl402/Locale/prototype/region/prop-desc.js +intl402/Locale/prototype/baseName/branding.js +intl402/Locale/prototype/baseName/name.js +intl402/Locale/prototype/baseName/prop-desc.js +intl402/Locale/prototype/hourCycle/branding.js +intl402/Locale/prototype/hourCycle/name.js +intl402/Locale/prototype/hourCycle/prop-desc.js +intl402/Locale/prototype/prop-desc.js +intl402/Locale/prototype/toString/branding.js +intl402/Locale/prototype/toString/prop-desc.js +intl402/Locale/prototype/toStringTag/toStringTag.js +intl402/Locale/prototype/toStringTag/toString.js +intl402/Locale/prototype/toStringTag/toString-removed-tag.js +intl402/Locale/prototype/calendar/branding.js +intl402/Locale/prototype/calendar/name.js +intl402/Locale/prototype/calendar/prop-desc.js +intl402/Locale/prototype/numberingSystem/branding.js +intl402/Locale/prototype/numberingSystem/name.js +intl402/Locale/prototype/numberingSystem/prop-desc.js +intl402/Locale/prototype/minimize/length.js +intl402/Locale/prototype/minimize/branding.js +intl402/Locale/prototype/minimize/name.js +intl402/Locale/prototype/minimize/prop-desc.js +intl402/Locale/prototype/minimize/removing-likely-subtags-first-adds-likely-subtags.js +intl402/Locale/prototype/collation/branding.js +intl402/Locale/prototype/collation/name.js +intl402/Locale/prototype/collation/prop-desc.js +intl402/Locale/prototype/numeric/branding.js +intl402/Locale/prototype/numeric/name.js +intl402/Locale/prototype/numeric/prop-desc.js +intl402/Locale/prototype/maximize/length.js +intl402/Locale/prototype/maximize/branding.js +intl402/Locale/prototype/maximize/name.js +intl402/Locale/prototype/maximize/prop-desc.js +intl402/Locale/constructor-options-numberingsystem-invalid.js +intl402/Locale/constructor-options-hourcycle-valid.js +intl402/Locale/constructor-parse-twice.js +intl402/Locale/constructor-tag.js +intl402/Locale/reject-duplicate-variants-in-tlang.js +intl402/Locale/constructor-unicode-ext-invalid.js +intl402/Locale/constructor-options-calendar-valid.js +intl402/Locale/proto-from-ctor-realm.js +intl402/Locale/constructor-apply-options-canonicalizes-twice.js +intl402/Locale/invalid-tag-throws.js +intl402/Locale/constructor-options-numeric-valid.js +intl402/Locale/constructor-options-collation-invalid.js +intl402/Locale/constructor-options-language-valid-undefined.js +intl402/Locale/constructor-options-script-invalid.js +intl402/Locale/reject-duplicate-variants.js +intl402/Locale/extensions-private.js +intl402/Locale/invalid-tag-throws-boolean.js +intl402/Locale/constructor-options-region-valid.js +intl402/Locale/constructor-options-casefirst-invalid.js +intl402/Locale/subclassing.js +intl402/Locale/constructor-options-numberingsystem-valid.js +intl402/Locale/constructor-unicode-ext-valid.js +intl402/Locale/constructor-options-collation-valid.js +intl402/Locale/constructor-options-canonicalized.js +intl402/Locale/invalid-tag-throws-null.js +intl402/Locale/invalid-tag-throws-number.js +intl402/Locale/canonicalize-locale-list-take-locale.js +intl402/Locale/instance-extensibility.js +intl402/Locale/likely-subtags-grandfathered.js +intl402/Locale/constructor-tag-tostring.js +intl402/Locale/constructor-options-calendar-invalid.js +intl402/Locale/constructor-options-script-valid-undefined.js +intl402/supportedLocalesOf-throws-if-element-not-string-or-object.js +intl402/supportedLocalesOf-duplicate-elements-removed.js +intl402/supportedLocalesOf-returned-array-elements-are-not-frozen.js +intl402/supportedLocalesOf-taint-Array.js +intl402/supportedLocalesOf-default-locale-and-zxx-locale.js +intl402/supportedLocalesOf-unicode-extensions-ignored.js +intl402/Array/prototype/toLocaleString/calls-toLocaleString-number-elements.js +intl402/supportedLocalesOf-empty-and-undefined.js +intl402/language-tags-with-underscore.js +intl402/fallback-locales-are-supported.js +intl402/supportedLocalesOf-consistent-with-resolvedOptions.js +intl402/supportedLocalesOf-taint-Array-2.js +intl402/supportedLocalesOf-locales-arg-empty-array.js +intl402/Number/prototype/toLocaleString/builtin.js +intl402/Number/prototype/toLocaleString/returns-same-results-as-NumberFormat.js +intl402/Number/prototype/toLocaleString/this-number-value.js +intl402/Number/prototype/toLocaleString/length.js +intl402/Number/prototype/toLocaleString/default-options-object-prototype.js +intl402/Number/prototype/toLocaleString/taint-Intl-NumberFormat.js +intl402/Number/prototype/toLocaleString/throws-same-exceptions-as-NumberFormat.js +intl402/TypedArray/prototype/toLocaleString/calls-toLocaleString-number-elements.js +intl402/default-locale-is-canonicalized.js +intl402/Intl/builtin.js +intl402/Intl/toStringTag/toStringTag.js +intl402/Intl/toStringTag/toString.js +intl402/Intl/getCanonicalLocales/complex-language-subtag-replacement.js +intl402/Intl/getCanonicalLocales/transformed-ext-canonical.js +intl402/Intl/getCanonicalLocales/preferred-variant.js +intl402/Intl/getCanonicalLocales/non-iana-canon.js +intl402/Intl/getCanonicalLocales/has-property.js +intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-col-strength.js +intl402/Intl/getCanonicalLocales/length.js +intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-region.js +intl402/Intl/getCanonicalLocales/weird-cases.js +intl402/Intl/getCanonicalLocales/overriden-push.js +intl402/Intl/getCanonicalLocales/locales-is-not-a-string.js +intl402/Intl/getCanonicalLocales/transformed-ext-invalid.js +intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-measurement-system.js +intl402/Intl/getCanonicalLocales/canonicalized-tags.js +intl402/Intl/getCanonicalLocales/complex-region-subtag-replacement.js +intl402/Intl/getCanonicalLocales/to-string.js +intl402/Intl/getCanonicalLocales/unicode-ext-key-with-digit.js +intl402/Intl/getCanonicalLocales/error-cases.js +intl402/Intl/getCanonicalLocales/grandfathered.js +intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-subdivision.js +intl402/Intl/getCanonicalLocales/getCanonicalLocales.js +intl402/Intl/getCanonicalLocales/descriptor.js +intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-yes-to-true.js +intl402/Intl/getCanonicalLocales/main.js +intl402/Intl/getCanonicalLocales/name.js +intl402/Intl/getCanonicalLocales/elements-not-reordered.js +intl402/Intl/getCanonicalLocales/transformed-ext-valid.js +intl402/Intl/getCanonicalLocales/Locale-object.js +intl402/Intl/getCanonicalLocales/get-locale.js +intl402/Intl/getCanonicalLocales/canonicalized-unicode-ext-seq.js +intl402/Intl/getCanonicalLocales/overriden-arg-length.js +intl402/Intl/getCanonicalLocales/returned-object-is-mutable.js +intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-timezone.js +intl402/Intl/getCanonicalLocales/duplicates.js +intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-calendar.js +intl402/Intl/getCanonicalLocales/invalid-tags.js +intl402/Intl/getCanonicalLocales/returned-object-is-an-array.js +intl402/Intl/getCanonicalLocales/preferred-grandfathered.js +intl402/constructors-taint-Object-prototype.js +intl402/DateTimeFormat/builtin.js +intl402/DateTimeFormat/constructor-default-value.js +intl402/DateTimeFormat/constructor-options-throwing-getters.js +intl402/DateTimeFormat/timezone-utc.js +intl402/DateTimeFormat/taint-Object-prototype-fractionalSecondDigits.js +intl402/DateTimeFormat/this-value-ignored.js +intl402/DateTimeFormat/supportedLocalesOf/builtin.js +intl402/DateTimeFormat/supportedLocalesOf/length.js +intl402/DateTimeFormat/supportedLocalesOf/basic.js +intl402/DateTimeFormat/supportedLocalesOf/name.js +intl402/DateTimeFormat/supportedLocalesOf/prop-desc.js +intl402/DateTimeFormat/supportedLocalesOf/taint-Object-prototype.js +intl402/DateTimeFormat/length.js +intl402/DateTimeFormat/constructor-options-dayPeriod-valid.js +intl402/DateTimeFormat/test-option-hour12.js +intl402/DateTimeFormat/constructor-options-fractionalSecondDigits-valid.js +intl402/DateTimeFormat/constructor-options-throwing-getters-fractionalSecondDigits.js +intl402/DateTimeFormat/constructor-calendar-numberingSystem-order.js +intl402/DateTimeFormat/date-time-options.js +intl402/DateTimeFormat/legacy-regexp-statics-not-modified.js +intl402/DateTimeFormat/constructor-options-order.js +intl402/DateTimeFormat/intl-legacy-constructed-symbol-on-unwrap.js +intl402/DateTimeFormat/constructor-options-order-fractionalSecondDigits.js +intl402/DateTimeFormat/taint-Object-prototype-dayPeriod.js +intl402/DateTimeFormat/default-options-object-prototype.js +intl402/DateTimeFormat/constructor-options-throwing-getters-dayPeriod.js +intl402/DateTimeFormat/constructor-options-order-dayPeriod.js +intl402/DateTimeFormat/instance-proto-and-extensible.js +intl402/DateTimeFormat/name.js +intl402/DateTimeFormat/prop-desc.js +intl402/DateTimeFormat/constructor-options-throwing-getters-timedate-style.js +intl402/DateTimeFormat/timezone-invalid.js +intl402/DateTimeFormat/constructor-options-toobject.js +intl402/DateTimeFormat/taint-Object-prototype.js +intl402/DateTimeFormat/prototype/this-value-datetimeformat-prototype.js +intl402/DateTimeFormat/prototype/builtin.js +intl402/DateTimeFormat/prototype/this-value-not-datetimeformat.js +intl402/DateTimeFormat/prototype/format/dayPeriod-narrow-en.js +intl402/DateTimeFormat/prototype/format/time-clip-to-integer.js +intl402/DateTimeFormat/prototype/format/builtin.js +intl402/DateTimeFormat/prototype/format/format-function-length.js +intl402/DateTimeFormat/prototype/format/length.js +intl402/DateTimeFormat/prototype/format/format-function-name.js +intl402/DateTimeFormat/prototype/format/throws-value-non-finite.js +intl402/DateTimeFormat/prototype/format/name.js +intl402/DateTimeFormat/prototype/format/prop-desc.js +intl402/DateTimeFormat/prototype/format/proleptic-gregorian-calendar.js +intl402/DateTimeFormat/prototype/format/time-clip-near-time-boundaries.js +intl402/DateTimeFormat/prototype/format/taint-Object-prototype.js +intl402/DateTimeFormat/prototype/format/dayPeriod-short-en.js +intl402/DateTimeFormat/prototype/format/fractionalSecondDigits.js +intl402/DateTimeFormat/prototype/format/timedatestyle-en.js +intl402/DateTimeFormat/prototype/format/format-function-builtin.js +intl402/DateTimeFormat/prototype/format/related-year-zh.js +intl402/DateTimeFormat/prototype/format/bound-to-datetimeformat-instance.js +intl402/DateTimeFormat/prototype/format/date-constructor-not-called.js +intl402/DateTimeFormat/prototype/format/dayPeriod-long-en.js +intl402/DateTimeFormat/prototype/constructor/value.js +intl402/DateTimeFormat/prototype/constructor/prop-desc.js +intl402/DateTimeFormat/prototype/formatRangeToParts/builtin.js +intl402/DateTimeFormat/prototype/formatRangeToParts/length.js +intl402/DateTimeFormat/prototype/formatRangeToParts/pattern-on-calendar.js +intl402/DateTimeFormat/prototype/formatRangeToParts/argument-date-string.js +intl402/DateTimeFormat/prototype/formatRangeToParts/this-is-not-object-throws.js +intl402/DateTimeFormat/prototype/formatRangeToParts/this-bad-object.js +intl402/DateTimeFormat/prototype/formatRangeToParts/name.js +intl402/DateTimeFormat/prototype/formatRangeToParts/prop-desc.js +intl402/DateTimeFormat/prototype/formatRangeToParts/date-is-nan-throws.js +intl402/DateTimeFormat/prototype/formatRangeToParts/argument-to-integer.js +intl402/DateTimeFormat/prototype/formatRangeToParts/date-is-infinity-throws.js +intl402/DateTimeFormat/prototype/formatRangeToParts/date-x-greater-than-y-throws.js +intl402/DateTimeFormat/prototype/formatRangeToParts/fractionalSecondDigits.js +intl402/DateTimeFormat/prototype/formatRangeToParts/argument-tonumber-throws.js +intl402/DateTimeFormat/prototype/formatRangeToParts/argument-near-time-boundaries.js +intl402/DateTimeFormat/prototype/formatRangeToParts/en-US.js +intl402/DateTimeFormat/prototype/formatRangeToParts/date-undefined-throws.js +intl402/DateTimeFormat/prototype/resolvedOptions/builtin.js +intl402/DateTimeFormat/prototype/resolvedOptions/order-dayPeriod.js +intl402/DateTimeFormat/prototype/resolvedOptions/resolved-locale-with-hc-unicode.js +intl402/DateTimeFormat/prototype/resolvedOptions/length.js +intl402/DateTimeFormat/prototype/resolvedOptions/order-fractionalSecondDigits.js +intl402/DateTimeFormat/prototype/resolvedOptions/basic.js +intl402/DateTimeFormat/prototype/resolvedOptions/order.js +intl402/DateTimeFormat/prototype/resolvedOptions/name.js +intl402/DateTimeFormat/prototype/resolvedOptions/prop-desc.js +intl402/DateTimeFormat/prototype/resolvedOptions/hourCycle-timeStyle.js +intl402/DateTimeFormat/prototype/resolvedOptions/order-style.js +intl402/DateTimeFormat/prototype/resolvedOptions/hourCycle-dateStyle.js +intl402/DateTimeFormat/prototype/resolvedOptions/hourCycle-default.js +intl402/DateTimeFormat/prototype/resolvedOptions/hourCycle.js +intl402/DateTimeFormat/prototype/prop-desc.js +intl402/DateTimeFormat/prototype/toStringTag/toStringTag.js +intl402/DateTimeFormat/prototype/toStringTag/toString.js +intl402/DateTimeFormat/prototype/toStringTag/toString-changed-tag.js +intl402/DateTimeFormat/prototype/toStringTag/toString-removed-tag.js +intl402/DateTimeFormat/prototype/formatToParts/dayPeriod-narrow-en.js +intl402/DateTimeFormat/prototype/formatToParts/time-clip-to-integer.js +intl402/DateTimeFormat/prototype/formatToParts/this-has-not-internal-throws.js +intl402/DateTimeFormat/prototype/formatToParts/length.js +intl402/DateTimeFormat/prototype/formatToParts/pattern-on-calendar.js +intl402/DateTimeFormat/prototype/formatToParts/this-is-not-object-throws.js +intl402/DateTimeFormat/prototype/formatToParts/main.js +intl402/DateTimeFormat/prototype/formatToParts/name.js +intl402/DateTimeFormat/prototype/formatToParts/time-clip-near-time-boundaries.js +intl402/DateTimeFormat/prototype/formatToParts/date-is-nan-throws.js +intl402/DateTimeFormat/prototype/formatToParts/date-is-infinity-throws.js +intl402/DateTimeFormat/prototype/formatToParts/dayPeriod-short-en.js +intl402/DateTimeFormat/prototype/formatToParts/fractionalSecondDigits.js +intl402/DateTimeFormat/prototype/formatToParts/related-year-zh.js +intl402/DateTimeFormat/prototype/formatToParts/return-abrupt-tonumber-date.js +intl402/DateTimeFormat/prototype/formatToParts/date-constructor-not-called.js +intl402/DateTimeFormat/prototype/formatToParts/formatToParts.js +intl402/DateTimeFormat/prototype/formatToParts/related-year.js +intl402/DateTimeFormat/prototype/formatToParts/dayPeriod-long-en.js +intl402/DateTimeFormat/prototype/formatRange/builtin.js +intl402/DateTimeFormat/prototype/formatRange/length.js +intl402/DateTimeFormat/prototype/formatRange/argument-date-string.js +intl402/DateTimeFormat/prototype/formatRange/this-is-not-object-throws.js +intl402/DateTimeFormat/prototype/formatRange/this-bad-object.js +intl402/DateTimeFormat/prototype/formatRange/name.js +intl402/DateTimeFormat/prototype/formatRange/prop-desc.js +intl402/DateTimeFormat/prototype/formatRange/date-is-nan-throws.js +intl402/DateTimeFormat/prototype/formatRange/argument-to-integer.js +intl402/DateTimeFormat/prototype/formatRange/date-is-infinity-throws.js +intl402/DateTimeFormat/prototype/formatRange/date-x-greater-than-y-throws.js +intl402/DateTimeFormat/prototype/formatRange/fractionalSecondDigits.js +intl402/DateTimeFormat/prototype/formatRange/argument-tonumber-throws.js +intl402/DateTimeFormat/prototype/formatRange/argument-near-time-boundaries.js +intl402/DateTimeFormat/prototype/formatRange/en-US.js +intl402/DateTimeFormat/prototype/formatRange/date-undefined-throws.js +intl402/DateTimeFormat/constructor-options-order-timedate-style.js +intl402/DateTimeFormat/intl-legacy-constructed-symbol.js +intl402/DateTimeFormat/required-date-time-formats.js +intl402/DateTimeFormat/constructor-options-timeStyle-invalid.js +intl402/DateTimeFormat/constructor-options-dateStyle-valid.js +intl402/DateTimeFormat/proto-from-ctor-realm.js +intl402/DateTimeFormat/timezone-canonicalized.js +intl402/DateTimeFormat/numbering-system-calendar-options.js +intl402/DateTimeFormat/constructor-options-numberingSystem-invalid.js +intl402/DateTimeFormat/constructor-options-fractionalSecondDigits-invalid.js +intl402/DateTimeFormat/taint-Object-prototype-date-time-components.js +intl402/DateTimeFormat/test-option-formatMatcher.js +intl402/DateTimeFormat/test-option-date-time-components.js +intl402/DateTimeFormat/ignore-invalid-unicode-ext-values.js +intl402/DateTimeFormat/casing-numbering-system-calendar-options.js +intl402/DateTimeFormat/constructor-options-dateStyle-invalid.js +intl402/DateTimeFormat/subclassing.js +intl402/DateTimeFormat/constructor-options-timeStyle-valid.js +intl402/DateTimeFormat/test-option-localeMatcher.js +intl402/DateTimeFormat/constructor-options-calendar-invalid.js +intl402/DateTimeFormat/constructor-options-dayPeriod-invalid.js +intl402/default-locale-is-supported.js +intl402/constructors-string-and-single-element-array.js +intl402/language-tags-invalid.js +intl402/supportedLocalesOf-test-option-localeMatcher.js +intl402/constructors-taint-Object-prototype-2.js +intl402/String/prototype/toLocaleLowerCase/special_casing_Azeri.js +intl402/String/prototype/toLocaleLowerCase/capital_I_with_dot.js +intl402/String/prototype/toLocaleLowerCase/special_casing_Lithuanian.js +intl402/String/prototype/toLocaleLowerCase/special_casing_Turkish.js +intl402/String/prototype/toLocaleUpperCase/special_casing_Azeri.js +intl402/String/prototype/toLocaleUpperCase/special_casing_Lithuanian.js +intl402/String/prototype/toLocaleUpperCase/special_casing_Turkish.js +intl402/String/prototype/localeCompare/return-abrupt-this-value.js +intl402/String/prototype/localeCompare/builtin.js +intl402/String/prototype/localeCompare/length.js +intl402/String/prototype/localeCompare/missing-arguments-coerced-to-undefined.js +intl402/String/prototype/localeCompare/default-options-object-prototype.js +intl402/String/prototype/localeCompare/taint-Intl-Collator.js +intl402/String/prototype/localeCompare/returns-same-results-as-Collator.js +intl402/String/prototype/localeCompare/this-value-coerced-to-string.js +intl402/String/prototype/localeCompare/throws-same-exceptions-as-Collator.js +intl402/String/prototype/localeCompare/that-arg-coerced-to-string.js +intl402/Collator/builtin.js +intl402/Collator/test-option-usage.js +intl402/Collator/constructor-options-throwing-getters.js +intl402/Collator/this-value-ignored.js +intl402/Collator/supportedLocalesOf/builtin.js +intl402/Collator/supportedLocalesOf/length.js +intl402/Collator/supportedLocalesOf/basic.js +intl402/Collator/supportedLocalesOf/name.js +intl402/Collator/supportedLocalesOf/prop-desc.js +intl402/Collator/supportedLocalesOf/taint-Object-prototype.js +intl402/Collator/length.js +intl402/Collator/legacy-regexp-statics-not-modified.js +intl402/Collator/test-option-ignorePunctuation.js +intl402/Collator/default-options-object-prototype.js +intl402/Collator/unicode-ext-value-collation.js +intl402/Collator/instance-proto-and-extensible.js +intl402/Collator/name.js +intl402/Collator/prop-desc.js +intl402/Collator/test-option-sensitivity.js +intl402/Collator/missing-unicode-ext-value-defaults-to-true.js +intl402/Collator/taint-Object-prototype.js +intl402/Collator/prototype/builtin.js +intl402/Collator/prototype/this-value-collator-prototype.js +intl402/Collator/prototype/constructor/value.js +intl402/Collator/prototype/constructor/prop-desc.js +intl402/Collator/prototype/resolvedOptions/builtin.js +intl402/Collator/prototype/resolvedOptions/length.js +intl402/Collator/prototype/resolvedOptions/basic.js +intl402/Collator/prototype/resolvedOptions/order.js +intl402/Collator/prototype/resolvedOptions/name.js +intl402/Collator/prototype/resolvedOptions/prop-desc.js +intl402/Collator/prototype/prop-desc.js +intl402/Collator/prototype/toStringTag/toStringTag.js +intl402/Collator/prototype/toStringTag/toString.js +intl402/Collator/prototype/toStringTag/toString-changed-tag.js +intl402/Collator/prototype/toStringTag/toString-removed-tag.js +intl402/Collator/prototype/compare/builtin.js +intl402/Collator/prototype/compare/compare-function-name.js +intl402/Collator/prototype/compare/non-normative-phonebook.js +intl402/Collator/prototype/compare/length.js +intl402/Collator/prototype/compare/canonically-equivalent-strings.js +intl402/Collator/prototype/compare/bound-to-collator-instance.js +intl402/Collator/prototype/compare/non-normative-sensitivity.js +intl402/Collator/prototype/compare/name.js +intl402/Collator/prototype/compare/prop-desc.js +intl402/Collator/prototype/compare/compare-function-length.js +intl402/Collator/prototype/compare/non-normative-basic.js +intl402/Collator/prototype/compare/compare-function-builtin.js +intl402/Collator/prototype/this-value-not-collator.js +intl402/Collator/usage-de.js +intl402/Collator/proto-from-ctor-realm.js +intl402/Collator/ignore-invalid-unicode-ext-values.js +intl402/Collator/numeric-and-caseFirst.js +intl402/Collator/unicode-ext-seq-in-private-tag.js +intl402/Collator/unicode-ext-seq-with-attribute.js +intl402/Collator/subclassing.js +intl402/Collator/test-option-numeric-and-caseFirst.js +intl402/Collator/test-option-localeMatcher.js +intl402/Date/prototype/taint-Intl-DateTimeFormat.js +intl402/Date/prototype/toLocaleTimeString/builtin.js +intl402/Date/prototype/toLocaleTimeString/length.js +intl402/Date/prototype/throws-same-exceptions-as-DateTimeFormat.js +intl402/Date/prototype/returns-same-results-as-DateTimeFormat.js +intl402/Date/prototype/toLocaleDateString/builtin.js +intl402/Date/prototype/toLocaleDateString/length.js +intl402/Date/prototype/this-value-invalid-date.js +intl402/Date/prototype/this-value-non-date.js +intl402/Date/prototype/toLocaleString/builtin.js +intl402/Date/prototype/toLocaleString/length.js +intl402/Date/prototype/toLocaleString/default-options-object-prototype.js +intl402/language-tags-valid.js +intl402/language-tags-canonicalized.js \ No newline at end of file diff --git a/test262/es5_tests.txt b/test262/es5_tests.txt old mode 100644 new mode 100755 diff --git a/test262/run_sunspider.py b/test262/run_sunspider.py index 6064c59093102e38a75599d38f11b0dd1a676f3e..73a64ff631f98c290deef0bd9fa15aaf9922825d 100755 --- a/test262/run_sunspider.py +++ b/test262/run_sunspider.py @@ -46,7 +46,7 @@ def parse_args(): ARK_ARGS = "--gc-type=epsilon" - +ICU_PATH = f"--icu-data-path={CODE_ROOT}/third_party/icu/ohos_icu4j/data" ARK_TOOL = DEFAULT_ARK_TOOL ARK_FRONTEND_TOOL = DEFAULT_ARK_FRONTEND_TOOL LIBS_DIR = DEFAULT_LIBS_DIR @@ -155,10 +155,11 @@ class ArkProgram(): return retcode def execute(self): + os.environ["LD_LIBRARY_PATH"] = self.libs_dir file_name_pre = os.path.splitext(self.js_file)[0] - cmd_args = [self.ark_tool, ARK_ARGS, + cmd_args = [self.ark_tool, ARK_ARGS, ICU_PATH, f'{file_name_pre}.abc'] retcode = exec_command(cmd_args) return retcode diff --git a/test262/skip_tests.json b/test262/skip_tests.json old mode 100644 new mode 100755 index a3143720250f2fb38c62c60df0855ffc9b07f099..09271c54d874aa6095791fba6f531f8c56f58495 --- a/test262/skip_tests.json +++ b/test262/skip_tests.json @@ -1214,9 +1214,9 @@ "reason": "Missing Symbol.toStringTag.js", "files": [ "language/module-code/namespace/Symbol.toStringTag.js" - ] - }, - { + ] + }, + { "reason": "Not support [[delete]]", "files": [ "built-ins/TypedArrayConstructors/internals/Delete/indexed-value-ab-strict.js", @@ -1224,14 +1224,6 @@ "built-ins/TypedArrayConstructors/internals/Delete/key-is-out-of-bounds-strict.js" ] }, - { - "reason": "Intl402 Not support Collator", - "files": [ - "intl402/String/prototype/localeCompare/returns-same-results-as-Collator.js", - "intl402/String/prototype/localeCompare/throws-same-exceptions-as-Collator.js", - "intl402/String/prototype/localeCompare/default-options-object-prototype.js" - ] - }, { "reason": "Not support at and includes", "files": [ @@ -1280,76 +1272,55 @@ ] }, { - "reason": "remove intl related testcases for temporarily isolating Intl code", + "reason": "Temporary shielding of unstable test cases", "files": [ - "built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-80.js", - "built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-159.js", - "built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-90.js", - "built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-158.js", - "built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-79.js", - "built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-152.js", - "built-ins/Number/prototype/S15.7.4_A3.3.js", - "built-ins/String/prototype/toLocaleLowerCase/S15.5.4.17_A1_T6.js", - "built-ins/String/prototype/toLocaleLowerCase/S15.5.4.17_A1_T5.js", - "built-ins/String/prototype/toLocaleLowerCase/S15.5.4.17_A6.js", - "built-ins/String/prototype/toLocaleLowerCase/name.js", - "built-ins/String/prototype/toLocaleLowerCase/S15.5.4.17_A10.js", - "built-ins/String/prototype/toLocaleLowerCase/S15.5.4.17_A11.js", - "built-ins/String/prototype/toLocaleLowerCase/S15.5.4.17_A1_T10.js", - "built-ins/String/prototype/toLocaleLowerCase/S15.5.4.17_A1_T11.js", - "built-ins/String/prototype/toLocaleLowerCase/S15.5.4.17_A1_T4.js", - "built-ins/String/prototype/toLocaleLowerCase/S15.5.4.17_A1_T12.js", - "built-ins/String/prototype/toLocaleLowerCase/S15.5.4.17_A9.js", - "built-ins/String/prototype/toLocaleLowerCase/special_casing.js", - "built-ins/String/prototype/toLocaleLowerCase/S15.5.4.17_A1_T14.js", - "built-ins/String/prototype/toLocaleLowerCase/S15.5.4.17_A1_T13.js", - "built-ins/String/prototype/toLocaleLowerCase/special_casing_conditional.js", - "built-ins/String/prototype/toLocaleLowerCase/S15.5.4.17_A1_T9.js", - "built-ins/String/prototype/toLocaleLowerCase/S15.5.4.17_A1_T1.js", - "built-ins/String/prototype/toLocaleLowerCase/S15.5.4.17_A1_T8.js", - "built-ins/String/prototype/toLocaleLowerCase/S15.5.4.17_A1_T7.js", - "built-ins/String/prototype/toLocaleLowerCase/S15.5.4.17_A1_T2.js", - "built-ins/String/prototype/toLocaleLowerCase/S15.5.4.17_A8.js", - "built-ins/String/prototype/toLocaleLowerCase/supplementary_plane.js", - "built-ins/String/prototype/toLocaleLowerCase/S15.5.4.17_A2_T1.js", - "built-ins/String/prototype/toLocaleUpperCase/S15.5.4.19_A1_T9.js", - "built-ins/String/prototype/toLocaleUpperCase/name.js", - "built-ins/String/prototype/toLocaleUpperCase/S15.5.4.19_A10.js", - "built-ins/String/prototype/toLocaleUpperCase/S15.5.4.19_A6.js", - "built-ins/String/prototype/toLocaleUpperCase/S15.5.4.19_A1_T12.js", - "built-ins/String/prototype/toLocaleUpperCase/special_casing.js", - "built-ins/String/prototype/toLocaleUpperCase/S15.5.4.19_A1_T7.js", - "built-ins/String/prototype/toLocaleUpperCase/S15.5.4.19_A1_T13.js", - "built-ins/String/prototype/toLocaleUpperCase/S15.5.4.19_A11.js", - "built-ins/String/prototype/toLocaleUpperCase/S15.5.4.19_A9.js", - "built-ins/String/prototype/toLocaleUpperCase/S15.5.4.19_A1_T1.js", - "built-ins/String/prototype/toLocaleUpperCase/S15.5.4.19_A2_T1.js", - "built-ins/String/prototype/toLocaleUpperCase/S15.5.4.19_A1_T8.js", - "built-ins/String/prototype/toLocaleUpperCase/S15.5.4.19_A1_T14.js", - "built-ins/String/prototype/toLocaleUpperCase/S15.5.4.19_A1_T10.js", - "built-ins/String/prototype/toLocaleUpperCase/S15.5.4.19_A1_T4.js", - "built-ins/String/prototype/toLocaleUpperCase/S15.5.4.19_A1_T5.js", - "built-ins/String/prototype/toLocaleUpperCase/supplementary_plane.js", - "built-ins/String/prototype/toLocaleUpperCase/S15.5.4.19_A1_T11.js", - "built-ins/String/prototype/toLocaleUpperCase/S15.5.4.19_A8.js", - "built-ins/String/prototype/toLocaleUpperCase/S15.5.4.19_A1_T6.js", - "built-ins/String/prototype/toLocaleUpperCase/S15.5.4.19_A1_T2.js", - "built-ins/String/prototype/normalize/length.js", - "built-ins/String/prototype/normalize/name.js", - "built-ins/String/prototype/normalize/return-normalized-string-using-default-parameter.js", - "built-ins/String/prototype/normalize/return-abrupt-from-form.js", - "built-ins/String/prototype/normalize/form-is-not-valid-throws.js", - "built-ins/String/prototype/normalize/return-normalized-string.js", - "built-ins/String/prototype/normalize/return-normalized-string-from-coerced-form.js", - "built-ins/String/prototype/normalize/return-abrupt-from-this.js", - "built-ins/String/prototype/normalize/normalize.js", - "intl402/String/prototype/toLocaleLowerCase/special_casing_Azeri.js", - "intl402/String/prototype/toLocaleLowerCase/special_casing_Turkish.js", - "intl402/String/prototype/toLocaleLowerCase/capital_I_with_dot.js", - "intl402/String/prototype/toLocaleLowerCase/special_casing_Lithuanian.js", - "intl402/String/prototype/toLocaleUpperCase/special_casing_Azeri.js", - "intl402/String/prototype/toLocaleUpperCase/special_casing_Turkish.js", - "intl402/String/prototype/toLocaleUpperCase/special_casing_Lithuanian.js" + "language/statements/class/gen-method-param-dflt-yield.js", + "language/expressions/class/static-gen-method-param-dflt-yield.js", + "language/statements/switch/S12.11_A2_T1.js", + "language/statements/generators/param-dflt-yield.js", + "language/module-code/early-export-global.js" + ] + }, + { + "reason": "Current ICU version not support yet", + "files": [ + "intl402/language-tags-canonicalized.js", + "intl402/constructors-string-and-single-element-array.js", + "intl402/language-tags-valid.js", + "intl402/fallback-locales-are-supported.js", + "intl402/supportedLocalesOf-consistent-with-resolvedOptions.js", + "intl402/supportedLocalesOf-unicode-extensions-ignored.js", + "intl402/String/prototype/localeCompare/returns-same-results-as-Collator.js", + "intl402/String/prototype/localeCompare/throws-same-exceptions-as-Collator.js", + "intl402/String/prototype/localeCompare/default-options-object-prototype.js", + "intl402/DateTimeFormat/prototype/resolvedOptions/hourCycle.js", + "intl402/DateTimeFormat/prototype/resolvedOptions/hourCycle-timeStyle.js", + "intl402/DateTimeFormat/casing-numbering-system-calendar-options.js", + "intl402/DateTimeFormat/prototype/format/timedatestyle-en.js", + "intl402/DateTimeFormat/prototype/formatToParts/main.js", + "intl402/DateTimeFormat/prototype/format/related-year-zh.js", + "intl402/PluralRules/prototype/resolvedOptions/pluralCategories.js", + "intl402/RelativeTimeFormat/prototype/format/pl-pl-style-long.js", + "intl402/RelativeTimeFormat/prototype/format/pl-pl-style-short.js", + "intl402/RelativeTimeFormat/prototype/format/pl-pl-style-narrow.js", + "intl402/RelativeTimeFormat/prototype/formatToParts/pl-pl-style-long.js", + "intl402/RelativeTimeFormat/prototype/formatToParts/pl-pl-style-short.js", + "intl402/RelativeTimeFormat/prototype/formatToParts/pl-pl-style-narrow.js", + "intl402/NumberFormat/prototype/formatToParts/main.js", + "intl402/NumberFormat/currency-digits.js", + "intl402/NumberFormat/casing-numbering-system-options.js", + "intl402/Locale/constructor-non-iana-canon.js", + "intl402/Locale/extensions-grandfathered.js", + "intl402/Locale/likely-subtags-grandfathered.js", + "intl402/Locale/prototype/minimize/removing-likely-subtags-first-adds-likely-subtags.js", + "intl402/Intl/getCanonicalLocales/non-iana-canon.js", + "intl402/Intl/getCanonicalLocales/transformed-ext-canonical.js", + "intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-yes-to-true.js", + "intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-region.js", + "intl402/Intl/getCanonicalLocales/preferred-grandfathered.js", + "intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-subdivision.js", + "intl402/Intl/getCanonicalLocales/canonicalized-tags.js", + "intl402/Intl/getCanonicalLocales/transformed-ext-invalid.js" ] } ] diff --git a/ts2panda/.gitignore b/ts2panda/.gitignore old mode 100644 new mode 100755 diff --git a/ts2panda/BUILD.gn b/ts2panda/BUILD.gn old mode 100644 new mode 100755 index a5662adb25a845f7a394a98d9ec20b88b658d3c9..9b3a5ec49350a13e00f175e5a36ed6cca6ee148d --- a/ts2panda/BUILD.gn +++ b/ts2panda/BUILD.gn @@ -50,30 +50,21 @@ action("ts2abc_diagnostic_ts") { ark_gen_file("ts2abc_irnodes_ts") { template_file = "templates/irnodes.ts.erb" - data_file = "$ark_root/isa/isa.yaml" + data_file = "$root_gen_dir/isa/isa.yaml" requires = [ "$ark_root/isa/isapi.rb", "$ark_root/libpandafile/pandafile_isapi.rb", ] output_file = "$src_dir/irnodes.ts" - extra_dependencies = [ "$ts2abc_root:ts2abc_src" ] -} - -ark_gen_file("ts2abc_builtinsMap_ts") { - template_file = "templates/builtinsMap.ts.erb" - data_file = "$ark_root/isa/builtins.yaml" - requires = [ - "$ark_root/isa/builtinsapi.rb", - "//ark/js_runtime/ecmascript/ecma_builtins.rb", + extra_dependencies = [ + "$ts2abc_root:ts2abc_src", + "$ark_root/isa:isa_combine", ] - output_file = "$src_dir/builtinsMap.ts" - extra_dependencies = [ "$ts2abc_root:ts2abc_src" ] } action("npm_run_build") { visibility = [ ":*" ] deps = [ - "$ts2abc_root:ts2abc_builtinsMap_ts", "$ts2abc_root:ts2abc_diagnostic_ts", "$ts2abc_root:ts2abc_irnodes_ts", "$ts2abc_root:ts2abc_src", @@ -227,7 +218,6 @@ if (is_mingw) { ":src_win", ":ts2abc_build_win", ] - sources = [ "${root_out_dir}/ark/ark/build-win" ] outputs = [ "${root_out_dir}/ark/ark/build-win-ets" ] module_source_dir = "${root_out_dir}/ark/ark/build-win-ets" @@ -285,7 +275,6 @@ if (is_mac) { ":src_mac", ":ts2abc_build_mac", ] - sources = [ "${root_out_dir}/ark/ark/build-mac" ] outputs = [ "${root_out_dir}/ark/ark/build-mac-ets" ] module_source_dir = "${root_out_dir}/ark/ark/build-mac-ets" @@ -303,7 +292,6 @@ ohos_copy("panda_ts2abc") { ohos_copy("panda_ts2abc_ets") { sources = [ "${ts2abc_root}/scripts/ts2abc.js" ] - outputs = [ target_out_dir + "/$target_name/{{source_file_part}}" ] module_source_dir = target_out_dir + "/$target_name/" module_install_name = "" diff --git a/ts2panda/README.md b/ts2panda/README.md old mode 100644 new mode 100755 diff --git a/ts2panda/package-lock.json b/ts2panda/package-lock.json old mode 100644 new mode 100755 diff --git a/ts2panda/package.json b/ts2panda/package.json old mode 100644 new mode 100755 diff --git a/ts2panda/scripts/diagnosticMessages.json b/ts2panda/scripts/diagnosticMessages.json old mode 100644 new mode 100755 index c9ce61034d1ff7912502ade08437f095014df0a2..b4142d717dcbc994e804387a8ca6c6a0b4e5a635 --- a/ts2panda/scripts/diagnosticMessages.json +++ b/ts2panda/scripts/diagnosticMessages.json @@ -511,5 +511,9 @@ "Lexical declaration 'const' not allowed in statement position": { "category": "Error", "code": 19009 + }, + "Invalid regular expression flag '{0}'":{ + "category": "Error", + "code": 19010 } } \ No newline at end of file diff --git a/ts2panda/scripts/gen_diagnostic.sh b/ts2panda/scripts/gen_diagnostic.sh old mode 100644 new mode 100755 index 7b6481a0a9700c796c201a6c8376c1c1de7bd554..3f5e53eb61b5502aa90f936d87aa897caaa87cd3 --- a/ts2panda/scripts/gen_diagnostic.sh +++ b/ts2panda/scripts/gen_diagnostic.sh @@ -12,7 +12,6 @@ # See the License for the specific language governing permissions and # limitations under the License. - set -e PANDA_ROOT="../submodules/panda" diff --git a/ts2panda/scripts/gen_irnodes.sh b/ts2panda/scripts/gen_irnodes.sh old mode 100644 new mode 100755 diff --git a/ts2panda/scripts/ts2abc.js b/ts2panda/scripts/ts2abc.js old mode 100644 new mode 100755 diff --git a/ts2panda/src/addVariable2Scope.ts b/ts2panda/src/addVariable2Scope.ts old mode 100644 new mode 100755 diff --git a/ts2panda/src/assemblyDumper.ts b/ts2panda/src/assemblyDumper.ts old mode 100644 new mode 100755 index cf52cbb5d0519db9a46e05aea4377bbf3e1eb97f..c425d876fd61d73eab8fac56a20e11827d81adf6 --- a/ts2panda/src/assemblyDumper.ts +++ b/ts2panda/src/assemblyDumper.ts @@ -14,7 +14,6 @@ */ import { - BuiltinR2i, Imm, IRNode, IRNodeKind, @@ -24,8 +23,10 @@ import { } from "./irnodes"; import { generateCatchTables } from "./statement/tryStatement"; import { PandaGen } from "./pandagen"; -import { CmdOptions } from "./cmdOptions"; -import { builtinsCodeMap } from "./builtinsMap"; +import { + isRangeInst, + getRangeExplicitVregNums, +} from "./base/util"; export class IntrinsicInfo { readonly intrinsicName: string; @@ -59,21 +60,6 @@ export class AssemblyDumper { out.str += "\n"; } - static writeIntrinsicDecl(out: any): void { - out.str += ".record Ecmascript.Intrinsics \n"; - AssemblyDumper.intrinsicRec.forEach((intrinsicInfo, mnemonic) => { - out.str += ".function " + intrinsicInfo!.returnType + " Ecmascript.Intrinsics." + mnemonic + "("; - let intrinsicArgNum = intrinsicInfo!.argsNum; - for (let i = 0; i < intrinsicArgNum; i++) { - out.str += "any a" + i.toString(); - if (i != intrinsicArgNum - 1) { - out.str += ", "; - } - } - out.str += ") \n"; - }) - } - writeFunctionHeader(): void { let parametersCount = this.pg.getParametersCount(); this.output += ".function any " + this.pg.internalName + "(" @@ -90,7 +76,7 @@ export class AssemblyDumper { let irNodes: IRNode[] = this.pg.getInsns(); let parametersCount = this.pg.getParametersCount(); - /* the first parametersCount insns are mov.dyn insns for argument initialization, + /* the first parametersCount insns are move insn for argument initialization, we can directly dump them into text */ for (let i = 0; i < parametersCount; ++i) { @@ -113,7 +99,11 @@ export class AssemblyDumper { this.output += node.mnemonic + " "; let operands = node.operands; let formats = node.formats; + var outputRangeVregNum = getRangeExplicitVregNums(node); for (let j = 0; j < operands.length; ++j) { + if (outputRangeVregNum == 0) { + break; + } let format = formats[0]; let kind = format[j].kind; let op = operands[j]; @@ -135,8 +125,10 @@ export class AssemblyDumper { throw Error("invalid register, please check your insn!\nRegister was allocated at:\n" + v.getStackTrace() + "\n"); } this.output += "v" + v.num.toString(); - if (node instanceof BuiltinR2i) { - break; // we don't need to print all the registers, just the first one + // we don't need to print all the registers for range inst, just the first one + if (isRangeInst(node)) { + outputRangeVregNum--; + continue; } } else if (kind == OperandKind.Label) { this.output += this.getLabelName(