| Index: src/heap/scavenger.h
|
| diff --git a/src/heap/scavenger.h b/src/heap/scavenger.h
|
| index 54fe6ffdf92f50b4a017bd4216b0005011b542a6..72e6a1f4743fa286769708e39fdf851adc13cfa5 100644
|
| --- a/src/heap/scavenger.h
|
| +++ b/src/heap/scavenger.h
|
| @@ -44,16 +44,20 @@ class Scavenger {
|
| VisitorDispatchTable<ScavengingCallback> scavenging_visitors_table_;
|
| };
|
|
|
| -
|
| // Helper class for turning the scavenger into an object visitor that is also
|
| // filtering out non-HeapObjects and objects which do not reside in new space.
|
| -class ScavengeVisitor : public ObjectVisitor {
|
| +// TODO(ulan): ObjectVisitor is needed only for code flusher. Remove it after
|
| +// changing the scanvenger to treat JSFunction->next_link strongly.
|
| +class RootScavengeVisitor : public ObjectVisitor, public RootVisitor {
|
| public:
|
| - explicit ScavengeVisitor(Heap* heap) : heap_(heap) {}
|
| + explicit RootScavengeVisitor(Heap* heap) : heap_(heap) {}
|
|
|
| void VisitPointer(Object** p) override;
|
| void VisitPointers(Object** start, Object** end) override;
|
|
|
| + void VisitRootPointer(Root root, Object** p) override;
|
| + void VisitRootPointers(Root root, Object** start, Object** end) override;
|
| +
|
| private:
|
| inline void ScavengePointer(Object** p);
|
|
|
|
|