GeezerVison is showing github.com — deps: patch V8 to 10.2.154.23 · nodejs/node@2088cb4
File treeExpand file treeCollapse file tree Open diff view settings Expand file treeCollapse file tree Open diff view settings Collapse file Copy file name to clipboardExpand all lines: deps/v8/include/v8-version.h +1-1Lines changed: 1 addition & 1 deletion | Original file line number | Diff line number | Diff line change |
|---|
| 11 | 11 | #define V8_MAJOR_VERSION 10 | 12 | 12 | #define V8_MINOR_VERSION 2 | 13 | 13 | #define V8_BUILD_NUMBER 154 | 14 | | -#define V8_PATCH_LEVEL 19 | | 14 | +#define V8_PATCH_LEVEL 23 | 15 | 15 |
| 16 | 16 | // Use 1 for candidates and 0 otherwise. | 17 | 17 | // (Boolean macro values are not supported by all preprocessors.) | |
Collapse file Copy file name to clipboardExpand all lines: deps/v8/src/ast/scopes.cc +10-15Lines changed: 10 additions & 15 deletions | Original file line number | Diff line number | Diff line change |
|---|
@@ -888,9 +888,8 @@ void DeclarationScope::AddLocal(Variable* var) { | 888 | 888 | } | 889 | 889 |
| 890 | 890 | void Scope::Snapshot::Reparent(DeclarationScope* new_parent) { | 891 | | - DCHECK(!IsCleared()); | 892 | | - DCHECK_EQ(new_parent, outer_scope_and_calls_eval_.GetPointer()->inner_scope_); | 893 | | - DCHECK_EQ(new_parent->outer_scope_, outer_scope_and_calls_eval_.GetPointer()); | | 891 | + DCHECK_EQ(new_parent, outer_scope_->inner_scope_); | | 892 | + DCHECK_EQ(new_parent->outer_scope_, outer_scope_); | 894 | 893 | DCHECK_EQ(new_parent, new_parent->GetClosureScope()); | 895 | 894 | DCHECK_NULL(new_parent->inner_scope_); | 896 | 895 | DCHECK(new_parent->unresolved_list_.is_empty()); | @@ -915,12 +914,11 @@ void Scope::Snapshot::Reparent(DeclarationScope* new_parent) { | 915 | 914 | new_parent->sibling_ = top_inner_scope_; | 916 | 915 | } | 917 | 916 |
| 918 | | - Scope* outer_scope = outer_scope_and_calls_eval_.GetPointer(); | 919 | | - new_parent->unresolved_list_.MoveTail(&outer_scope->unresolved_list_, | | 917 | + new_parent->unresolved_list_.MoveTail(&outer_scope_->unresolved_list_, | 920 | 918 | top_unresolved_); | 921 | 919 |
| 922 | 920 | // Move temporaries allocated for complex parameter initializers. | 923 | | - DeclarationScope* outer_closure = outer_scope->GetClosureScope(); | | 921 | + DeclarationScope* outer_closure = outer_scope_->GetClosureScope(); | 924 | 922 | for (auto it = top_local_; it != outer_closure->locals()->end(); ++it) { | 925 | 923 | Variable* local = *it; | 926 | 924 | DCHECK_EQ(VariableMode::kTemporary, local->mode()); | @@ -932,16 +930,10 @@ void Scope::Snapshot::Reparent(DeclarationScope* new_parent) { | 932 | 930 | outer_closure->locals_.Rewind(top_local_); | 933 | 931 |
| 934 | 932 | // Move eval calls since Snapshot's creation into new_parent. | 935 | | - if (outer_scope_and_calls_eval_->calls_eval_) { | 936 | | - new_parent->RecordDeclarationScopeEvalCall(); | 937 | | - new_parent->inner_scope_calls_eval_ = true; | | 933 | + if (outer_scope_->calls_eval_) { | | 934 | + new_parent->RecordEvalCall(); | | 935 | + declaration_scope_->sloppy_eval_can_extend_vars_ = false; | 938 | 936 | } | 939 | | - | 940 | | - // We are in the arrow function case. The calls eval we may have recorded | 941 | | - // is intended for the inner scope and we should simply restore the | 942 | | - // original "calls eval" flag of the outer scope. | 943 | | - RestoreEvalFlag(); | 944 | | - Clear(); | 945 | 937 | } | 946 | 938 |
| 947 | 939 | void Scope::ReplaceOuterScope(Scope* outer) { | @@ -2579,6 +2571,9 @@ void Scope::AllocateVariablesRecursively() { | 2579 | 2571 | this->ForEach([](Scope* scope) -> Iteration { | 2580 | 2572 | DCHECK(!scope->already_resolved_); | 2581 | 2573 | if (WasLazilyParsed(scope)) return Iteration::kContinue; | | 2574 | + if (scope->sloppy_eval_can_extend_vars_) { | | 2575 | + scope->num_heap_slots_ = Context::MIN_CONTEXT_EXTENDED_SLOTS; | | 2576 | + } | 2582 | 2577 | DCHECK_EQ(scope->ContextHeaderLength(), scope->num_heap_slots_); | 2583 | 2578 |
| 2584 | 2579 | // Allocate variables for this scope. | |
Collapse file Copy file name to clipboardExpand all lines: deps/v8/src/ast/scopes.h +30-45Lines changed: 30 additions & 45 deletions | Original file line number | Diff line number | Diff line change |
|---|
@@ -112,58 +112,38 @@ class V8_EXPORT_PRIVATE Scope : public NON_EXPORTED_BASE(ZoneObject) { | 112 | 112 |
| 113 | 113 | class Snapshot final { | 114 | 114 | public: | 115 | | - Snapshot() | 116 | | - : outer_scope_and_calls_eval_(nullptr, false), | 117 | | - top_unresolved_(), | 118 | | - top_local_() { | 119 | | - DCHECK(IsCleared()); | 120 | | - } | 121 | 115 | inline explicit Snapshot(Scope* scope); | 122 | 116 |
| 123 | 117 | // Disallow copy and move. | 124 | 118 | Snapshot(const Snapshot&) = delete; | 125 | 119 | Snapshot(Snapshot&&) = delete; | 126 | 120 |
| 127 | 121 | ~Snapshot() { | 128 | | - // If we're still active, there was no arrow function. In that case outer | 129 | | - // calls eval if it already called eval before this snapshot started, or | 130 | | - // if the code during the snapshot called eval. | 131 | | - if (!IsCleared() && outer_scope_and_calls_eval_.GetPayload()) { | 132 | | - RestoreEvalFlag(); | | 122 | + // Restore eval flags from before the scope was active. | | 123 | + if (sloppy_eval_can_extend_vars_) { | | 124 | + declaration_scope_->sloppy_eval_can_extend_vars_ = true; | 133 | 125 | } | 134 | | - } | 135 | | - | 136 | | - void RestoreEvalFlag() { | 137 | | - if (outer_scope_and_calls_eval_.GetPayload()) { | 138 | | - // This recreates both calls_eval and sloppy_eval_can_extend_vars. | 139 | | - outer_scope_and_calls_eval_.GetPointer()->RecordEvalCall(); | | 126 | + if (calls_eval_) { | | 127 | + outer_scope_->calls_eval_ = true; | 140 | 128 | } | 141 | 129 | } | 142 | 130 |
| 143 | 131 | void Reparent(DeclarationScope* new_parent); | 144 | | - bool IsCleared() const { | 145 | | - return outer_scope_and_calls_eval_.GetPointer() == nullptr; | 146 | | - } | 147 | | - | 148 | | - void Clear() { | 149 | | - outer_scope_and_calls_eval_.SetPointer(nullptr); | 150 | | -#ifdef DEBUG | 151 | | - outer_scope_and_calls_eval_.SetPayload(false); | 152 | | - top_inner_scope_ = nullptr; | 153 | | - top_local_ = base::ThreadedList<Variable>::Iterator(); | 154 | | - top_unresolved_ = UnresolvedList::Iterator(); | 155 | | -#endif | 156 | | - } | 157 | 132 |
| 158 | 133 | private: | 159 | | - // During tracking calls_eval caches whether the outer scope called eval. | 160 | | - // Upon move assignment we store whether the new inner scope calls eval into | 161 | | - // the move target calls_eval bit, and restore calls eval on the outer | 162 | | - // scope. | 163 | | - base::PointerWithPayload<Scope, bool, 1> outer_scope_and_calls_eval_; | | 134 | + Scope* outer_scope_; | | 135 | + Scope* declaration_scope_; | 164 | 136 | Scope* top_inner_scope_; | 165 | 137 | UnresolvedList::Iterator top_unresolved_; | 166 | 138 | base::ThreadedList<Variable>::Iterator top_local_; | | 139 | + // While the scope is active, the scope caches the flag values for | | 140 | + // outer_scope_ / declaration_scope_ they can be used to know what happened | | 141 | + // while parsing the arrow head. If this turns out to be an arrow head, new | | 142 | + // values on the respective scopes will be cleared and moved to the inner | | 143 | + // scope. Otherwise the cached flags will be merged with the flags from the | | 144 | + // arrow head. | | 145 | + bool calls_eval_; | | 146 | + bool sloppy_eval_can_extend_vars_; | 167 | 147 | }; | 168 | 148 |
| 169 | 149 | enum class DeserializationMode { kIncludingVariables, kScopesOnly }; | @@ -909,8 +889,8 @@ class V8_EXPORT_PRIVATE DeclarationScope : public Scope { | 909 | 889 | void RecordDeclarationScopeEvalCall() { | 910 | 890 | calls_eval_ = true; | 911 | 891 |
| 912 | | - // If this isn't a sloppy eval, we don't care about it. | 913 | | - if (language_mode() != LanguageMode::kSloppy) return; | | 892 | + // The caller already checked whether we're in sloppy mode. | | 893 | + CHECK(is_sloppy(language_mode())); | 914 | 894 |
| 915 | 895 | // Sloppy eval in script scopes can only introduce global variables anyway, | 916 | 896 | // so we don't care that it calls sloppy eval. | @@ -944,7 +924,6 @@ class V8_EXPORT_PRIVATE DeclarationScope : public Scope { | 944 | 924 | } | 945 | 925 |
| 946 | 926 | sloppy_eval_can_extend_vars_ = true; | 947 | | - num_heap_slots_ = Context::MIN_CONTEXT_EXTENDED_SLOTS; | 948 | 927 | } | 949 | 928 |
| 950 | 929 | bool sloppy_eval_can_extend_vars() const { | @@ -1369,7 +1348,9 @@ class V8_EXPORT_PRIVATE DeclarationScope : public Scope { | 1369 | 1348 |
| 1370 | 1349 | void Scope::RecordEvalCall() { | 1371 | 1350 | calls_eval_ = true; | 1372 | | - GetDeclarationScope()->RecordDeclarationScopeEvalCall(); | | 1351 | + if (is_sloppy(language_mode())) { | | 1352 | + GetDeclarationScope()->RecordDeclarationScopeEvalCall(); | | 1353 | + } | 1373 | 1354 | RecordInnerScopeEvalCall(); | 1374 | 1355 | // The eval contents might access "super" (if it's inside a function that | 1375 | 1356 | // binds super). | @@ -1382,14 +1363,18 @@ void Scope::RecordEvalCall() { | 1382 | 1363 | } | 1383 | 1364 |
| 1384 | 1365 | Scope::Snapshot::Snapshot(Scope* scope) | 1385 | | - : outer_scope_and_calls_eval_(scope, scope->calls_eval_), | | 1366 | + : outer_scope_(scope), | | 1367 | + declaration_scope_(scope->GetDeclarationScope()), | 1386 | 1368 | top_inner_scope_(scope->inner_scope_), | 1387 | 1369 | top_unresolved_(scope->unresolved_list_.end()), | 1388 | | - top_local_(scope->GetClosureScope()->locals_.end()) { | 1389 | | - // Reset in order to record eval calls during this Snapshot's lifetime. | 1390 | | - outer_scope_and_calls_eval_.GetPointer()->calls_eval_ = false; | 1391 | | - outer_scope_and_calls_eval_.GetPointer()->sloppy_eval_can_extend_vars_ = | 1392 | | - false; | | 1370 | + top_local_(scope->GetClosureScope()->locals_.end()), | | 1371 | + calls_eval_(outer_scope_->calls_eval_), | | 1372 | + sloppy_eval_can_extend_vars_( | | 1373 | + declaration_scope_->sloppy_eval_can_extend_vars_) { | | 1374 | + // Reset in order to record (sloppy) eval calls during this Snapshot's | | 1375 | + // lifetime. | | 1376 | + outer_scope_->calls_eval_ = false; | | 1377 | + declaration_scope_->sloppy_eval_can_extend_vars_ = false; | 1393 | 1378 | } | 1394 | 1379 |
| 1395 | 1380 | class ModuleScope final : public DeclarationScope { | |
Collapse file Copy file name to clipboardExpand all lines: deps/v8/src/builtins/promise-any.tq +14-1Lines changed: 14 additions & 1 deletion | Original file line number | Diff line number | Diff line change |
|---|
@@ -119,7 +119,19 @@ PromiseAnyRejectElementClosure( | 119 | 119 | kPromiseAnyRejectElementRemainingSlot); | 120 | 120 |
| 121 | 121 | // 9. Set errors[index] to x. | 122 | | - const newCapacity = IntPtrMax(SmiUntag(remainingElementsCount), index + 1); | | 122 | + | | 123 | + // The max computation below is an optimization to avoid excessive allocations | | 124 | + // in the case of input promises being asynchronously rejected in ascending | | 125 | + // index order. | | 126 | + // | | 127 | + // Note that subtracting 1 from remainingElementsCount is intentional. The | | 128 | + // value of remainingElementsCount is 1 larger than the actual value during | | 129 | + // iteration. So in the case of synchronous rejection, newCapacity is the | | 130 | + // correct size by subtracting 1. In the case of asynchronous rejection this | | 131 | + // is 1 smaller than the correct size, but is not incorrect as it is maxed | | 132 | + // with index + 1. | | 133 | + const newCapacity = | | 134 | + IntPtrMax(SmiUntag(remainingElementsCount) - 1, index + 1); | 123 | 135 | if (newCapacity > errors.length_intptr) deferred { | 124 | 136 | errors = ExtractFixedArray(errors, 0, errors.length_intptr, newCapacity); | 125 | 137 | *ContextSlot( | @@ -306,6 +318,7 @@ Reject(JSAny) { | 306 | 318 | PromiseAnyRejectElementContextSlots:: | 307 | 319 | kPromiseAnyRejectElementErrorsSlot); | 308 | 320 |
| | 321 | + check(errors.length == index - 1); | 309 | 322 | const error = ConstructAggregateError(errors); | 310 | 323 | // 3. Return ThrowCompletion(error). | 311 | 324 | goto Reject(error); | |
Collapse file Copy file name to clipboardExpand all lines: deps/v8/src/compiler/effect-control-linearizer.cc +25-26Lines changed: 25 additions & 26 deletions | Original file line number | Diff line number | Diff line change |
|---|
@@ -5384,6 +5384,8 @@ Node* EffectControlLinearizer::LowerLoadFieldByIndex(Node* node) { | 5384 | 5384 |
| 5385 | 5385 | auto if_double = __ MakeDeferredLabel(); | 5386 | 5386 | auto done = __ MakeLabel(MachineRepresentation::kTagged); | | 5387 | + auto loaded_field = __ MakeLabel(MachineRepresentation::kTagged); | | 5388 | + auto done_double = __ MakeLabel(MachineRepresentation::kFloat64); | 5387 | 5389 |
| 5388 | 5390 | // Check if field is a mutable double field. | 5389 | 5391 | __ GotoIfNot(__ IntPtrEqual(__ WordAnd(index, one), zero), &if_double); | @@ -5400,8 +5402,8 @@ Node* EffectControlLinearizer::LowerLoadFieldByIndex(Node* node) { | 5400 | 5402 | Node* offset = | 5401 | 5403 | __ IntAdd(__ WordShl(index, __ IntPtrConstant(kTaggedSizeLog2 - 1)), | 5402 | 5404 | __ IntPtrConstant(JSObject::kHeaderSize - kHeapObjectTag)); | 5403 | | - Node* result = __ Load(MachineType::AnyTagged(), object, offset); | 5404 | | - __ Goto(&done, result); | | 5405 | + Node* field = __ Load(MachineType::AnyTagged(), object, offset); | | 5406 | + __ Goto(&loaded_field, field); | 5405 | 5407 | } | 5406 | 5408 |
| 5407 | 5409 | // The field is located in the properties backing store of {object}. | @@ -5415,18 +5417,15 @@ Node* EffectControlLinearizer::LowerLoadFieldByIndex(Node* node) { | 5415 | 5417 | __ IntPtrConstant(kTaggedSizeLog2 - 1)), | 5416 | 5418 | __ IntPtrConstant((FixedArray::kHeaderSize - kTaggedSize) - | 5417 | 5419 | kHeapObjectTag)); | 5418 | | - Node* result = __ Load(MachineType::AnyTagged(), properties, offset); | 5419 | | - __ Goto(&done, result); | | 5420 | + Node* field = __ Load(MachineType::AnyTagged(), properties, offset); | | 5421 | + __ Goto(&loaded_field, field); | 5420 | 5422 | } | 5421 | 5423 | } | 5422 | 5424 |
| 5423 | 5425 | // The field is a Double field, either unboxed in the object on 64-bit | 5424 | 5426 | // architectures, or a mutable HeapNumber. | 5425 | 5427 | __ Bind(&if_double); | 5426 | 5428 | { | 5427 | | - auto loaded_field = __ MakeLabel(MachineRepresentation::kTagged); | 5428 | | - auto done_double = __ MakeLabel(MachineRepresentation::kFloat64); | 5429 | | - | 5430 | 5429 | index = __ WordSar(index, one); | 5431 | 5430 |
| 5432 | 5431 | // Check if field is in-object or out-of-object. | @@ -5454,27 +5453,27 @@ Node* EffectControlLinearizer::LowerLoadFieldByIndex(Node* node) { | 5454 | 5453 | Node* field = __ Load(MachineType::AnyTagged(), properties, offset); | 5455 | 5454 | __ Goto(&loaded_field, field); | 5456 | 5455 | } | | 5456 | + } | 5457 | 5457 |
| 5458 | | - __ Bind(&loaded_field); | 5459 | | - { | 5460 | | - Node* field = loaded_field.PhiAt(0); | 5461 | | - // We may have transitioned in-place away from double, so check that | 5462 | | - // this is a HeapNumber -- otherwise the load is fine and we don't need | 5463 | | - // to copy anything anyway. | 5464 | | - __ GotoIf(ObjectIsSmi(field), &done, field); | 5465 | | - Node* field_map = __ LoadField(AccessBuilder::ForMap(), field); | 5466 | | - __ GotoIfNot(__ TaggedEqual(field_map, __ HeapNumberMapConstant()), &done, | 5467 | | - field); | 5468 | | - | 5469 | | - Node* value = __ LoadField(AccessBuilder::ForHeapNumberValue(), field); | 5470 | | - __ Goto(&done_double, value); | 5471 | | - } | | 5458 | + __ Bind(&loaded_field); | | 5459 | + { | | 5460 | + Node* field = loaded_field.PhiAt(0); | | 5461 | + // We may have transitioned in-place away from double, so check that | | 5462 | + // this is a HeapNumber -- otherwise the load is fine and we don't need | | 5463 | + // to copy anything anyway. | | 5464 | + __ GotoIf(ObjectIsSmi(field), &done, field); | | 5465 | + Node* field_map = __ LoadField(AccessBuilder::ForMap(), field); | | 5466 | + __ GotoIfNot(__ TaggedEqual(field_map, __ HeapNumberMapConstant()), &done, | | 5467 | + field); | 5472 | 5468 |
| 5473 | | - __ Bind(&done_double); | 5474 | | - { | 5475 | | - Node* result = AllocateHeapNumberWithValue(done_double.PhiAt(0)); | 5476 | | - __ Goto(&done, result); | 5477 | | - } | | 5469 | + Node* value = __ LoadField(AccessBuilder::ForHeapNumberValue(), field); | | 5470 | + __ Goto(&done_double, value); | | 5471 | + } | | 5472 | + | | 5473 | + __ Bind(&done_double); | | 5474 | + { | | 5475 | + Node* result = AllocateHeapNumberWithValue(done_double.PhiAt(0)); | | 5476 | + __ Goto(&done, result); | 5478 | 5477 | } | 5479 | 5478 |
| 5480 | 5479 | __ Bind(&done); | |
Collapse file Copy file name to clipboardExpand all lines: deps/v8/src/compiler/heap-refs.h +2-1Lines changed: 2 additions & 1 deletion | Original file line number | Diff line number | Diff line change |
|---|
@@ -56,7 +56,8 @@ class PropertyAccessInfo; | 56 | 56 | enum class AccessMode { kLoad, kStore, kStoreInLiteral, kHas, kDefine }; | 57 | 57 |
| 58 | 58 | inline bool IsAnyStore(AccessMode mode) { | 59 | | - return mode == AccessMode::kStore || mode == AccessMode::kStoreInLiteral; | | 59 | + return mode == AccessMode::kStore || mode == AccessMode::kStoreInLiteral || | | 60 | + mode == AccessMode::kDefine; | 60 | 61 | } | 61 | 62 |
| 62 | 63 | enum class OddballType : uint8_t { | |
Collapse file Copy file name to clipboardExpand all lines: deps/v8/src/compiler/js-native-context-specialization.cc +1-1Lines changed: 1 addition & 1 deletion | Original file line number | Diff line number | Diff line change |
|---|
@@ -2896,7 +2896,7 @@ JSNativeContextSpecialization::BuildElementAccess( | 2896 | 2896 |
| 2897 | 2897 | // Don't try to store to a copy-on-write backing store (unless supported by | 2898 | 2898 | // the store mode). | 2899 | | - if (keyed_mode.access_mode() == AccessMode::kStore && | | 2899 | + if (IsAnyStore(keyed_mode.access_mode()) && | 2900 | 2900 | IsSmiOrObjectElementsKind(elements_kind) && | 2901 | 2901 | !IsCOWHandlingStoreMode(keyed_mode.store_mode())) { | 2902 | 2902 | effect = graph()->NewNode( | |
Collapse file Copy file name to clipboardExpand all lines: deps/v8/tools/v8heapconst.py +21-21Lines changed: 21 additions & 21 deletions | Original file line number | Diff line number | Diff line change |
|---|
| 538 | 538 | ("old_space", 0x04b39): "StringSplitCache", | 539 | 539 | ("old_space", 0x04f41): "RegExpMultipleCache", | 540 | 540 | ("old_space", 0x05349): "BuiltinsConstantsTable", | 541 | | - ("old_space", 0x05775): "AsyncFunctionAwaitRejectSharedFun", | 542 | | - ("old_space", 0x05799): "AsyncFunctionAwaitResolveSharedFun", | 543 | | - ("old_space", 0x057bd): "AsyncGeneratorAwaitRejectSharedFun", | 544 | | - ("old_space", 0x057e1): "AsyncGeneratorAwaitResolveSharedFun", | 545 | | - ("old_space", 0x05805): "AsyncGeneratorYieldResolveSharedFun", | 546 | | - ("old_space", 0x05829): "AsyncGeneratorReturnResolveSharedFun", | 547 | | - ("old_space", 0x0584d): "AsyncGeneratorReturnClosedRejectSharedFun", | 548 | | - ("old_space", 0x05871): "AsyncGeneratorReturnClosedResolveSharedFun", | 549 | | - ("old_space", 0x05895): "AsyncIteratorValueUnwrapSharedFun", | 550 | | - ("old_space", 0x058b9): "PromiseAllResolveElementSharedFun", | 551 | | - ("old_space", 0x058dd): "PromiseAllSettledResolveElementSharedFun", | 552 | | - ("old_space", 0x05901): "PromiseAllSettledRejectElementSharedFun", | 553 | | - ("old_space", 0x05925): "PromiseAnyRejectElementSharedFun", | 554 | | - ("old_space", 0x05949): "PromiseCapabilityDefaultRejectSharedFun", | 555 | | - ("old_space", 0x0596d): "PromiseCapabilityDefaultResolveSharedFun", | 556 | | - ("old_space", 0x05991): "PromiseCatchFinallySharedFun", | 557 | | - ("old_space", 0x059b5): "PromiseGetCapabilitiesExecutorSharedFun", | 558 | | - ("old_space", 0x059d9): "PromiseThenFinallySharedFun", | 559 | | - ("old_space", 0x059fd): "PromiseThrowerFinallySharedFun", | 560 | | - ("old_space", 0x05a21): "PromiseValueThunkFinallySharedFun", | 561 | | - ("old_space", 0x05a45): "ProxyRevokeSharedFun", | | 541 | + ("old_space", 0x05779): "AsyncFunctionAwaitRejectSharedFun", | | 542 | + ("old_space", 0x0579d): "AsyncFunctionAwaitResolveSharedFun", | | 543 | + ("old_space", 0x057c1): "AsyncGeneratorAwaitRejectSharedFun", | | 544 | + ("old_space", 0x057e5): "AsyncGeneratorAwaitResolveSharedFun", | | 545 | + ("old_space", 0x05809): "AsyncGeneratorYieldResolveSharedFun", | | 546 | + ("old_space", 0x0582d): "AsyncGeneratorReturnResolveSharedFun", | | 547 | + ("old_space", 0x05851): "AsyncGeneratorReturnClosedRejectSharedFun", | | 548 | + ("old_space", 0x05875): "AsyncGeneratorReturnClosedResolveSharedFun", | | 549 | + ("old_space", 0x05899): "AsyncIteratorValueUnwrapSharedFun", | | 550 | + ("old_space", 0x058bd): "PromiseAllResolveElementSharedFun", | | 551 | + ("old_space", 0x058e1): "PromiseAllSettledResolveElementSharedFun", | | 552 | + ("old_space", 0x05905): "PromiseAllSettledRejectElementSharedFun", | | 553 | + ("old_space", 0x05929): "PromiseAnyRejectElementSharedFun", | | 554 | + ("old_space", 0x0594d): "PromiseCapabilityDefaultRejectSharedFun", | | 555 | + ("old_space", 0x05971): "PromiseCapabilityDefaultResolveSharedFun", | | 556 | + ("old_space", 0x05995): "PromiseCatchFinallySharedFun", | | 557 | + ("old_space", 0x059b9): "PromiseGetCapabilitiesExecutorSharedFun", | | 558 | + ("old_space", 0x059dd): "PromiseThenFinallySharedFun", | | 559 | + ("old_space", 0x05a01): "PromiseThrowerFinallySharedFun", | | 560 | + ("old_space", 0x05a25): "PromiseValueThunkFinallySharedFun", | | 561 | + ("old_space", 0x05a49): "ProxyRevokeSharedFun", | 562 | 562 | } | 563 | 563 |
| 564 | 564 | # Lower 32 bits of first page addresses for various heap spaces. | |
|