| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent dc4e702 commit 16c9348
7 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -36,7 +36,7 @@ | |||
| 36 | 36 | ||
| 37 | 37 | # Reset this number to 0 on major V8 upgrades. | |
| 38 | 38 | # Increment by one for each non-official patch applied to deps/v8. | |
| 39 | - 'v8_embedder_string': '-node.6', | ||
| 39 | + 'v8_embedder_string': '-node.7', | ||
| 40 | 40 | ||
| 41 | 41 | ##### V8 defaults for Node.js ##### | |
| 42 | 42 | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -865,10 +865,7 @@ ElementAccessFeedback const& JSHeapBroker::ProcessFeedbackMapsForElementAccess( | |||
| 865 | 865 | MapUpdaterGuardIfNeeded mumd_scope(this); | |
| 866 | 866 | ||
| 867 | 867 | transition_target = map.object()->FindElementsKindTransitionedMap( | |
| 868 | - isolate(), | ||
| 869 | - MapHandlesSpan(possible_transition_targets.begin(), | ||
| 870 | - possible_transition_targets.end()), | ||
| 871 | - ConcurrencyMode::kConcurrent); | ||
| 868 | + isolate(), possible_transition_targets, ConcurrencyMode::kConcurrent); | ||
| 872 | 869 | } | |
| 873 | 870 | ||
| 874 | 871 | if (transition_target.is_null()) { | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -375,7 +375,7 @@ void IC::ConfigureVectorState(Handle<Name> name, DirectHandle<Map> map, | |||
| 375 | 375 | OnFeedbackChanged(IsLoadGlobalIC() ? "LoadGlobal" : "Monomorphic"); | |
| 376 | 376 | } | |
| 377 | 377 | ||
| 378 | - void IC::ConfigureVectorState(Handle<Name> name, MapHandlesSpan maps, | ||
| 378 | + void IC::ConfigureVectorState(Handle<Name> name, MapHandles const& maps, | ||
| 379 | 379 | MaybeObjectHandles* handlers) { | |
| 380 | 380 | DCHECK(!IsGlobalIC()); | |
| 381 | 381 | std::vector<MapAndHandler> maps_and_handlers; | |
@@ -741,9 +741,10 @@ bool IC::IsTransitionOfMonomorphicTarget(Tagged<Map> source_map, | |||
| 741 | 741 | source_map->elements_kind(), target_elements_kind); | |
| 742 | 742 | Tagged<Map> transitioned_map; | |
| 743 | 743 | if (more_general_transition) { | |
| 744 | - Handle<Map> single_map[1] = {handle(target_map, isolate_)}; | ||
| 744 | + MapHandles map_list; | ||
| 745 | + map_list.push_back(handle(target_map, isolate_)); | ||
| 745 | 746 | transitioned_map = source_map->FindElementsKindTransitionedMap( | |
| 746 | - isolate(), single_map, ConcurrencyMode::kSynchronous); | ||
| 747 | + isolate(), map_list, ConcurrencyMode::kSynchronous); | ||
| 747 | 748 | } | |
| 748 | 749 | return transitioned_map == target_map; | |
| 749 | 750 | } | |
@@ -1245,10 +1246,7 @@ void KeyedLoadIC::UpdateLoadElement(Handle<HeapObject> receiver, | |||
| 1245 | 1246 | } else if (target_receiver_maps.size() == 1) { | |
| 1246 | 1247 | ConfigureVectorState(Handle<Name>(), target_receiver_maps[0], handlers[0]); | |
| 1247 | 1248 | } else { | |
| 1248 | - ConfigureVectorState(Handle<Name>(), | ||
| 1249 | - MapHandlesSpan(target_receiver_maps.begin(), | ||
| 1250 | - target_receiver_maps.end()), | ||
| 1251 | - &handlers); | ||
| 1249 | + ConfigureVectorState(Handle<Name>(), target_receiver_maps, &handlers); | ||
| 1252 | 1250 | } | |
| 1253 | 1251 | } | |
| 1254 | 1252 | ||
@@ -1447,9 +1445,7 @@ void KeyedLoadIC::LoadElementPolymorphicHandlers( | |||
| 1447 | 1445 | // generate an elements kind transition for this kind of receivers. | |
| 1448 | 1446 | if (receiver_map->is_stable()) { | |
| 1449 | 1447 | Tagged<Map> tmap = receiver_map->FindElementsKindTransitionedMap( | |
| 1450 | - isolate(), | ||
| 1451 | - MapHandlesSpan(receiver_maps->begin(), receiver_maps->end()), | ||
| 1452 | - ConcurrencyMode::kSynchronous); | ||
| 1448 | + isolate(), *receiver_maps, ConcurrencyMode::kSynchronous); | ||
| 1453 | 1449 | if (!tmap.is_null()) { | |
| 1454 | 1450 | receiver_map->NotifyLeafMapLayoutChange(isolate()); | |
| 1455 | 1451 | } | |
@@ -2478,9 +2474,7 @@ void KeyedStoreIC::StoreElementPolymorphicHandlers( | |||
| 2478 | 2474 | } else { | |
| 2479 | 2475 | { | |
| 2480 | 2476 | Tagged<Map> tmap = receiver_map->FindElementsKindTransitionedMap( | |
| 2481 | - isolate(), | ||
| 2482 | - MapHandlesSpan(receiver_maps.begin(), receiver_maps.end()), | ||
| 2483 | - ConcurrencyMode::kSynchronous); | ||
| 2477 | + isolate(), receiver_maps, ConcurrencyMode::kSynchronous); | ||
| 2484 | 2478 | if (!tmap.is_null()) { | |
| 2485 | 2479 | if (receiver_map->is_stable()) { | |
| 2486 | 2480 | receiver_map->NotifyLeafMapLayoutChange(isolate()); | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -88,7 +88,7 @@ class IC { | |||
| 88 | 88 | void ConfigureVectorState(Handle<Name> name, DirectHandle<Map> map, | |
| 89 | 89 | const MaybeObjectHandle& handler); | |
| 90 | 90 | // Configure the vector for POLYMORPHIC. | |
| 91 | - void ConfigureVectorState(Handle<Name> name, MapHandlesSpan maps, | ||
| 91 | + void ConfigureVectorState(Handle<Name> name, MapHandles const& maps, | ||
| 92 | 92 | MaybeObjectHandles* handlers); | |
| 93 | 93 | void ConfigureVectorState( | |
| 94 | 94 | Handle<Name> name, std::vector<MapAndHandler> const& maps_and_handlers); | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -922,15 +922,16 @@ Handle<Map> Map::GetDerivedMap(Isolate* isolate, Handle<Map> from, | |||
| 922 | 922 | prototype); | |
| 923 | 923 | } | |
| 924 | 924 | ||
| 925 | - static bool ContainsMap(MapHandlesSpan maps, Tagged<Map> map) { | ||
| 925 | + static bool ContainsMap(MapHandles const& maps, Tagged<Map> map) { | ||
| 926 | 926 | DCHECK(!map.is_null()); | |
| 927 | 927 | for (Handle<Map> current : maps) { | |
| 928 | 928 | if (!current.is_null() && *current == map) return true; | |
| 929 | 929 | } | |
| 930 | 930 | return false; | |
| 931 | 931 | } | |
| 932 | 932 | ||
| 933 | - static bool HasElementsKind(MapHandlesSpan maps, ElementsKind elements_kind) { | ||
| 933 | + static bool HasElementsKind(MapHandles const& maps, | ||
| 934 | + ElementsKind elements_kind) { | ||
| 934 | 935 | for (Handle<Map> current : maps) { | |
| 935 | 936 | if (!current.is_null() && current->elements_kind() == elements_kind) | |
| 936 | 937 | return true; | |
@@ -939,7 +940,7 @@ static bool HasElementsKind(MapHandlesSpan maps, ElementsKind elements_kind) { | |||
| 939 | 940 | } | |
| 940 | 941 | ||
| 941 | 942 | Tagged<Map> Map::FindElementsKindTransitionedMap(Isolate* isolate, | |
| 942 | - MapHandlesSpan candidates, | ||
| 943 | + MapHandles const& candidates, | ||
| 943 | 944 | ConcurrencyMode cmode) { | |
| 944 | 945 | DisallowGarbageCollection no_gc; | |
| 945 | 946 | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -5,7 +5,6 @@ | |||
| 5 | 5 | #ifndef V8_OBJECTS_MAP_H_ | |
| 6 | 6 | #define V8_OBJECTS_MAP_H_ | |
| 7 | 7 | ||
| 8 | - #include "include/v8-memory-span.h" | ||
| 9 | 8 | #include "src/base/bit-field.h" | |
| 10 | 9 | #include "src/common/globals.h" | |
| 11 | 10 | #include "src/objects/code.h" | |
@@ -138,7 +137,6 @@ enum class ObjectFields { | |||
| 138 | 137 | }; | |
| 139 | 138 | ||
| 140 | 139 | using MapHandles = std::vector<Handle<Map>>; | |
| 141 | - using MapHandlesSpan = v8::MemorySpan<Handle<Map>>; | ||
| 142 | 140 | ||
| 143 | 141 | #include "torque-generated/src/objects/map-tq.inc" | |
| 144 | 142 | ||
@@ -851,7 +849,7 @@ class Map : public TorqueGeneratedMap<Map, HeapObject> { | |||
| 851 | 849 | // elements_kind that's found in |candidates|, or |nullptr| if no match is | |
| 852 | 850 | // found at all. | |
| 853 | 851 | V8_EXPORT_PRIVATE Tagged<Map> FindElementsKindTransitionedMap( | |
| 854 | - Isolate* isolate, MapHandlesSpan candidates, ConcurrencyMode cmode); | ||
| 852 | + Isolate* isolate, MapHandles const& candidates, ConcurrencyMode cmode); | ||
| 855 | 853 | ||
| 856 | 854 | inline bool CanTransition() const; | |
| 857 | 855 | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1841,7 +1841,8 @@ static void TestReconfigureElementsKind_GeneralizeFieldInPlace( | |||
| 1841 | 1841 | // Ensure Map::FindElementsKindTransitionedMap() is able to find the | |
| 1842 | 1842 | // transitioned map. | |
| 1843 | 1843 | { | |
| 1844 | - Handle<Map> map_list[1]{updated_map}; | ||
| 1844 | + MapHandles map_list; | ||
| 1845 | + map_list.push_back(updated_map); | ||
| 1845 | 1846 | Tagged<Map> transitioned_map = map2->FindElementsKindTransitionedMap( | |
| 1846 | 1847 | isolate, map_list, ConcurrencyMode::kSynchronous); | |
| 1847 | 1848 | CHECK_EQ(*updated_map, transitioned_map); | |
| Back | FazBrowse Home | New Git URL |
0 commit comments