| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent 7215d9b commit ee36b86
18 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -11,7 +11,7 @@ | |||
| 11 | 11 | #define V8_MAJOR_VERSION 13 | |
| 12 | 12 | #define V8_MINOR_VERSION 7 | |
| 13 | 13 | #define V8_BUILD_NUMBER 152 | |
| 14 | - #define V8_PATCH_LEVEL 14 | ||
| 14 | + #define V8_PATCH_LEVEL 19 | ||
| 15 | 15 | ||
| 16 | 16 | // Use 1 for candidates and 0 otherwise. | |
| 17 | 17 | // (Boolean macro values are not supported by all preprocessors.) | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -3875,7 +3875,7 @@ void Isolate::SwitchStacks(wasm::StackMemory* from, wasm::StackMemory* to) { | |||
| 3875 | 3875 | // TODO(388533754): This check won't hold anymore with core stack-switching. | |
| 3876 | 3876 | // Instead, we will need to validate all the intermediate stacks and also | |
| 3877 | 3877 | // check that they don't hold central stack frames. | |
| 3878 | - DCHECK_EQ(from->jmpbuf()->parent, to); | ||
| 3878 | + SBXCHECK_EQ(from->jmpbuf()->parent, to); | ||
| 3879 | 3879 | } | |
| 3880 | 3880 | uintptr_t limit = reinterpret_cast<uintptr_t>(to->jmpbuf()->stack_limit); | |
| 3881 | 3881 | stack_guard()->SetStackLimitForStackSwitching(limit); | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1221,7 +1221,8 @@ class V8_NODISCARD BytecodeGenerator::OptionalChainNullLabelScope final { | |||
| 1221 | 1221 | public: | |
| 1222 | 1222 | explicit OptionalChainNullLabelScope(BytecodeGenerator* bytecode_generator) | |
| 1223 | 1223 | : bytecode_generator_(bytecode_generator), | |
| 1224 | - labels_(bytecode_generator->zone()) { | ||
| 1224 | + labels_(bytecode_generator->zone()), | ||
| 1225 | + hole_check_scope_(bytecode_generator) { | ||
| 1225 | 1226 | prev_ = bytecode_generator_->optional_chaining_null_labels_; | |
| 1226 | 1227 | bytecode_generator_->optional_chaining_null_labels_ = &labels_; | |
| 1227 | 1228 | } | |
@@ -1236,6 +1237,9 @@ class V8_NODISCARD BytecodeGenerator::OptionalChainNullLabelScope final { | |||
| 1236 | 1237 | BytecodeGenerator* bytecode_generator_; | |
| 1237 | 1238 | BytecodeLabels labels_; | |
| 1238 | 1239 | BytecodeLabels* prev_; | |
| 1240 | + // Use the same scope for the entire optional chain, as links earlier in the | ||
| 1241 | + // chain dominate later links, linearly. | ||
| 1242 | + HoleCheckElisionScope hole_check_scope_; | ||
| 1239 | 1243 | }; | |
| 1240 | 1244 | ||
| 1241 | 1245 | // LoopScope delimits the scope of {loop}, from its header to its final jump. | |
@@ -6461,9 +6465,6 @@ template <typename ExpressionFunc> | |||
| 6461 | 6465 | void BytecodeGenerator::BuildOptionalChain(ExpressionFunc expression_func) { | |
| 6462 | 6466 | BytecodeLabel done; | |
| 6463 | 6467 | OptionalChainNullLabelScope label_scope(this); | |
| 6464 | - // Use the same scope for the entire optional chain, as links earlier in the | ||
| 6465 | - // chain dominate later links, linearly. | ||
| 6466 | - HoleCheckElisionScope elider(this); | ||
| 6467 | 6468 | expression_func(); | |
| 6468 | 6469 | builder()->Jump(&done); | |
| 6469 | 6470 | label_scope.labels()->Bind(builder()); | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -43,13 +43,12 @@ MaybeDirectHandle<JSV8BreakIterator> JSV8BreakIterator::New( | |||
| 43 | 43 | MAYBE_RETURN(maybe_locale_matcher, MaybeDirectHandle<JSV8BreakIterator>()); | |
| 44 | 44 | Intl::MatcherOption matcher = maybe_locale_matcher.FromJust(); | |
| 45 | 45 | ||
| 46 | - Maybe<Intl::ResolvedLocale> maybe_resolve_locale = | ||
| 47 | - Intl::ResolveLocale(isolate, JSV8BreakIterator::GetAvailableLocales(), | ||
| 48 | - requested_locales, matcher, {}); | ||
| 49 | - if (maybe_resolve_locale.IsNothing()) { | ||
| 46 | + Intl::ResolvedLocale r; | ||
| 47 | + if (!Intl::ResolveLocale(isolate, JSV8BreakIterator::GetAvailableLocales(), | ||
| 48 | + requested_locales, matcher, {}) | ||
| 49 | + .To(&r)) { | ||
| 50 | 50 | THROW_NEW_ERROR(isolate, NewRangeError(MessageTemplate::kIcuError)); | |
| 51 | 51 | } | |
| 52 | - Intl::ResolvedLocale r = maybe_resolve_locale.FromJust(); | ||
| 53 | 52 | ||
| 54 | 53 | // Extract type from options | |
| 55 | 54 | enum class Type { CHARACTER, WORD, SENTENCE, LINE }; | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -357,18 +357,16 @@ MaybeHandle<JSCollator> JSCollator::New(Isolate* isolate, DirectHandle<Map> map, | |||
| 357 | 357 | // https://tc39.github.io/ecma402/#sec-intl-collator-internal-slots | |
| 358 | 358 | // | |
| 359 | 359 | // 16. Let relevantExtensionKeys be %Collator%.[[RelevantExtensionKeys]]. | |
| 360 | - std::set<std::string> relevant_extension_keys{"co", "kn", "kf"}; | ||
| 361 | 360 | ||
| 362 | 361 | // 17. Let r be ResolveLocale(%Collator%.[[AvailableLocales]], | |
| 363 | 362 | // requestedLocales, opt, %Collator%.[[RelevantExtensionKeys]], | |
| 364 | 363 | // localeData). | |
| 365 | - Maybe<Intl::ResolvedLocale> maybe_resolve_locale = | ||
| 366 | - Intl::ResolveLocale(isolate, JSCollator::GetAvailableLocales(), | ||
| 367 | - requested_locales, matcher, relevant_extension_keys); | ||
| 368 | - if (maybe_resolve_locale.IsNothing()) { | ||
| 364 | + Intl::ResolvedLocale r; | ||
| 365 | + if (!Intl::ResolveLocale(isolate, JSCollator::GetAvailableLocales(), | ||
| 366 | + requested_locales, matcher, {"co", "kn", "kf"}) | ||
| 367 | + .To(&r)) { | ||
| 369 | 368 | THROW_NEW_ERROR(isolate, NewRangeError(MessageTemplate::kIcuError)); | |
| 370 | 369 | } | |
| 371 | - Intl::ResolvedLocale r = maybe_resolve_locale.FromJust(); | ||
| 372 | 370 | ||
| 373 | 371 | // 18. Set collator.[[Locale]] to r.[[locale]]. | |
| 374 | 372 | icu::Locale icu_locale = r.icu_locale; | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -2249,20 +2249,19 @@ MaybeDirectHandle<JSDateTimeFormat> JSDateTimeFormat::CreateDateTimeFormat( | |||
| 2249 | 2249 | // ecma402/#sec-intl.datetimeformat-internal-slots | |
| 2250 | 2250 | // The value of the [[RelevantExtensionKeys]] internal slot is | |
| 2251 | 2251 | // « "ca", "nu", "hc" ». | |
| 2252 | - std::set<std::string> relevant_extension_keys = {"nu", "ca", "hc"}; | ||
| 2253 | 2252 | ||
| 2254 | 2253 | // 10. Let localeData be %DateTimeFormat%.[[LocaleData]]. | |
| 2255 | 2254 | // 11. Let r be ResolveLocale( %DateTimeFormat%.[[AvailableLocales]], | |
| 2256 | 2255 | // requestedLocales, opt, %DateTimeFormat%.[[RelevantExtensionKeys]], | |
| 2257 | 2256 | // localeData). | |
| 2258 | 2257 | // | |
| 2259 | - Maybe<Intl::ResolvedLocale> maybe_resolve_locale = Intl::ResolveLocale( | ||
| 2260 | - isolate, JSDateTimeFormat::GetAvailableLocales(), requested_locales, | ||
| 2261 | - locale_matcher, relevant_extension_keys); | ||
| 2262 | - if (maybe_resolve_locale.IsNothing()) { | ||
| 2258 | + Intl::ResolvedLocale r; | ||
| 2259 | + if (!Intl::ResolveLocale(isolate, JSDateTimeFormat::GetAvailableLocales(), | ||
| 2260 | + requested_locales, locale_matcher, | ||
| 2261 | + {"nu", "ca", "hc"}) | ||
| 2262 | + .To(&r)) { | ||
| 2263 | 2263 | THROW_NEW_ERROR(isolate, NewRangeError(MessageTemplate::kIcuError)); | |
| 2264 | 2264 | } | |
| 2265 | - Intl::ResolvedLocale r = maybe_resolve_locale.FromJust(); | ||
| 2266 | 2265 | ||
| 2267 | 2266 | icu::Locale icu_locale = r.icu_locale; | |
| 2268 | 2267 | DCHECK(!icu_locale.isBogus()); | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -436,16 +436,14 @@ MaybeDirectHandle<JSDisplayNames> JSDisplayNames::New( | |||
| 436 | 436 | // ecma402/#sec-Intl.DisplayNames-internal-slots | |
| 437 | 437 | // The value of the [[RelevantExtensionKeys]] internal slot is | |
| 438 | 438 | // « ». | |
| 439 | - std::set<std::string> relevant_extension_keys = {}; | ||
| 440 | 439 | // 9. Let r be ResolveLocale(%DisplayNames%.[[AvailableLocales]], | |
| 441 | 440 | // requestedLocales, opt, %DisplayNames%.[[RelevantExtensionKeys]]). | |
| 442 | - Maybe<Intl::ResolvedLocale> maybe_resolve_locale = | ||
| 443 | - Intl::ResolveLocale(isolate, JSDisplayNames::GetAvailableLocales(), | ||
| 444 | - requested_locales, matcher, relevant_extension_keys); | ||
| 445 | - if (maybe_resolve_locale.IsNothing()) { | ||
| 441 | + Intl::ResolvedLocale r; | ||
| 442 | + if (!Intl::ResolveLocale(isolate, JSDisplayNames::GetAvailableLocales(), | ||
| 443 | + requested_locales, matcher, {}) | ||
| 444 | + .To(&r)) { | ||
| 446 | 445 | THROW_NEW_ERROR(isolate, NewRangeError(MessageTemplate::kIcuError)); | |
| 447 | 446 | } | |
| 448 | - Intl::ResolvedLocale r = maybe_resolve_locale.FromJust(); | ||
| 449 | 447 | ||
| 450 | 448 | icu::Locale icu_locale = r.icu_locale; | |
| 451 | 449 | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -289,13 +289,12 @@ MaybeDirectHandle<JSDurationFormat> JSDurationFormat::New( | |||
| 289 | 289 | // 9. Let r be ResolveLocale(%DurationFormat%.[[AvailableLocales]], | |
| 290 | 290 | // requestedLocales, opt, %DurationFormat%.[[RelevantExtensionKeys]], | |
| 291 | 291 | // %DurationFormat%.[[LocaleData]]). | |
| 292 | - std::set<std::string> relevant_extension_keys{"nu"}; | ||
| 293 | 292 | Intl::ResolvedLocale r; | |
| 294 | - MAYBE_ASSIGN_RETURN_ON_EXCEPTION_VALUE( | ||
| 295 | - isolate, r, | ||
| 296 | - Intl::ResolveLocale(isolate, JSDurationFormat::GetAvailableLocales(), | ||
| 297 | - requested_locales, matcher, relevant_extension_keys), | ||
| 298 | - DirectHandle<JSDurationFormat>()); | ||
| 293 | + if (!Intl::ResolveLocale(isolate, JSDurationFormat::GetAvailableLocales(), | ||
| 294 | + requested_locales, matcher, {"nu"}) | ||
| 295 | + .To(&r)) { | ||
| 296 | + THROW_NEW_ERROR(isolate, NewRangeError(MessageTemplate::kIcuError)); | ||
| 297 | + } | ||
| 299 | 298 | ||
| 300 | 299 | // 10. Let locale be r.[[locale]]. | |
| 301 | 300 | icu::Locale r_locale = r.icu_locale; | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -87,13 +87,13 @@ MaybeDirectHandle<JSListFormat> JSListFormat::New( | |||
| 87 | 87 | ||
| 88 | 88 | // 10. Let r be ResolveLocale(%ListFormat%.[[AvailableLocales]], | |
| 89 | 89 | // requestedLocales, opt, undefined, localeData). | |
| 90 | - Maybe<Intl::ResolvedLocale> maybe_resolve_locale = | ||
| 91 | - Intl::ResolveLocale(isolate, JSListFormat::GetAvailableLocales(), | ||
| 92 | - requested_locales, matcher, {}); | ||
| 93 | - if (maybe_resolve_locale.IsNothing()) { | ||
| 90 | + Intl::ResolvedLocale r; | ||
| 91 | + if (!Intl::ResolveLocale(isolate, JSListFormat::GetAvailableLocales(), | ||
| 92 | + requested_locales, matcher, {}) | ||
| 93 | + .To(&r)) { | ||
| 94 | 94 | THROW_NEW_ERROR(isolate, NewRangeError(MessageTemplate::kIcuError)); | |
| 95 | 95 | } | |
| 96 | - Intl::ResolvedLocale r = maybe_resolve_locale.FromJust(); | ||
| 96 | + | ||
| 97 | 97 | DirectHandle<String> locale_str = | |
| 98 | 98 | isolate->factory()->NewStringFromAsciiChecked(r.locale.c_str()); | |
| 99 | 99 | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1108,14 +1108,12 @@ MaybeDirectHandle<JSNumberFormat> JSNumberFormat::New( | |||
| 1108 | 1108 | // 10. Let r be ResolveLocale(%NumberFormat%.[[AvailableLocales]], | |
| 1109 | 1109 | // requestedLocales, opt, %NumberFormat%.[[RelevantExtensionKeys]], | |
| 1110 | 1110 | // localeData). | |
| 1111 | - std::set<std::string> relevant_extension_keys{"nu"}; | ||
| 1112 | - Maybe<Intl::ResolvedLocale> maybe_resolve_locale = | ||
| 1113 | - Intl::ResolveLocale(isolate, JSNumberFormat::GetAvailableLocales(), | ||
| 1114 | - requested_locales, matcher, relevant_extension_keys); | ||
| 1115 | - if (maybe_resolve_locale.IsNothing()) { | ||
| 1111 | + Intl::ResolvedLocale r; | ||
| 1112 | + if (!Intl::ResolveLocale(isolate, JSNumberFormat::GetAvailableLocales(), | ||
| 1113 | + requested_locales, matcher, {"nu"}) | ||
| 1114 | + .To(&r)) { | ||
| 1116 | 1115 | THROW_NEW_ERROR(isolate, NewRangeError(MessageTemplate::kIcuError)); | |
| 1117 | 1116 | } | |
| 1118 | - Intl::ResolvedLocale r = maybe_resolve_locale.FromJust(); | ||
| 1119 | 1117 | ||
| 1120 | 1118 | icu::Locale icu_locale = r.icu_locale; | |
| 1121 | 1119 | UErrorCode status = U_ZERO_ERROR; | |
| Back | FazBrowse Home | New Git URL |
0 commit comments