Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(391)

Unified Diff: src/heap/objects-visiting-inl.h

Issue 2377203003: [heap] Remove unnecessary marking specializations (Closed)
Patch Set: BytecodeArray Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/heap/objects-visiting.h ('k') | src/objects.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/heap/objects-visiting-inl.h
diff --git a/src/heap/objects-visiting-inl.h b/src/heap/objects-visiting-inl.h
index b93d31eb7489e4badb00a9adc05f6e7ab49a0ab1..b8c255e1f399e5e3889d3026ab53fa83a66ffa90 100644
--- a/src/heap/objects-visiting-inl.h
+++ b/src/heap/objects-visiting-inl.h
@@ -147,11 +147,17 @@ void StaticMarkingVisitor<StaticVisitor>::Initialize() {
table_.Register(kVisitNativeContext, &VisitNativeContext);
- table_.Register(kVisitAllocationSite, &VisitAllocationSite);
+ table_.Register(
+ kVisitAllocationSite,
+ &FixedBodyVisitor<StaticVisitor, AllocationSite::MarkingBodyDescriptor,
+ void>::Visit);
table_.Register(kVisitByteArray, &DataObjectVisitor::Visit);
- table_.Register(kVisitBytecodeArray, &VisitBytecodeArray);
+ table_.Register(
+ kVisitBytecodeArray,
+ &FixedBodyVisitor<StaticVisitor, BytecodeArray::MarkingBodyDescriptor,
+ void>::Visit);
table_.Register(kVisitFreeSpace, &DataObjectVisitor::Visit);
@@ -178,13 +184,15 @@ void StaticMarkingVisitor<StaticVisitor>::Initialize() {
&FlexibleBodyVisitor<StaticVisitor, JSArrayBuffer::BodyDescriptor,
void>::Visit);
- // Registration for kVisitJSRegExp is done by StaticVisitor.
+ table_.Register(kVisitJSRegExp, &JSObjectVisitor::Visit);
table_.Register(
kVisitCell,
&FixedBodyVisitor<StaticVisitor, Cell::BodyDescriptor, void>::Visit);
- table_.Register(kVisitPropertyCell, &VisitPropertyCell);
+ table_.Register(kVisitPropertyCell,
+ &FixedBodyVisitor<StaticVisitor, PropertyCell::BodyDescriptor,
+ void>::Visit);
table_.Register(kVisitWeakCell, &VisitWeakCell);
@@ -319,19 +327,6 @@ void StaticMarkingVisitor<StaticVisitor>::VisitMap(Map* map,
}
}
-
-template <typename StaticVisitor>
-void StaticMarkingVisitor<StaticVisitor>::VisitPropertyCell(
- Map* map, HeapObject* object) {
- Heap* heap = map->GetHeap();
-
- StaticVisitor::VisitPointers(
- heap, object,
- HeapObject::RawField(object, PropertyCell::kPointerFieldsBeginOffset),
- HeapObject::RawField(object, PropertyCell::kPointerFieldsEndOffset));
-}
-
-
template <typename StaticVisitor>
void StaticMarkingVisitor<StaticVisitor>::VisitWeakCell(Map* map,
HeapObject* object) {
@@ -384,19 +379,6 @@ void StaticMarkingVisitor<StaticVisitor>::VisitTransitionArray(
}
}
-
-template <typename StaticVisitor>
-void StaticMarkingVisitor<StaticVisitor>::VisitAllocationSite(
- Map* map, HeapObject* object) {
- Heap* heap = map->GetHeap();
-
- StaticVisitor::VisitPointers(
- heap, object,
- HeapObject::RawField(object, AllocationSite::kPointerFieldsBeginOffset),
- HeapObject::RawField(object, AllocationSite::kPointerFieldsEndOffset));
-}
-
-
template <typename StaticVisitor>
void StaticMarkingVisitor<StaticVisitor>::VisitWeakCollection(
Map* map, HeapObject* object) {
@@ -504,23 +486,6 @@ void StaticMarkingVisitor<StaticVisitor>::VisitJSFunction(Map* map,
VisitJSFunctionStrongCode(map, object);
}
-
-template <typename StaticVisitor>
-void StaticMarkingVisitor<StaticVisitor>::VisitJSRegExp(Map* map,
- HeapObject* object) {
- JSObjectVisitor::Visit(map, object);
-}
-
-template <typename StaticVisitor>
-void StaticMarkingVisitor<StaticVisitor>::VisitBytecodeArray(
- Map* map, HeapObject* object) {
- StaticVisitor::VisitPointers(
- map->GetHeap(), object,
- HeapObject::RawField(object, BytecodeArray::kConstantPoolOffset),
- HeapObject::RawField(object, BytecodeArray::kFrameSizeOffset));
-}
-
-
template <typename StaticVisitor>
void StaticMarkingVisitor<StaticVisitor>::MarkMapContents(Heap* heap,
Map* map) {
« no previous file with comments | « src/heap/objects-visiting.h ('k') | src/objects.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698