< prev index next >

src/hotspot/share/gc/shared/objectMarker.hpp

Print this page

        

*** 33,55 **** // heap. class ObjectMarker : public CHeapObj<mtInternal> { protected: bool _needs_reset; public: ! virtual bool init() = 0; // initialize ! virtual void done() = 0; // clean-up // mark an object if not yet marked. // return true if the oop is marked by this call virtual bool mark(oop o) = 0; ! virtual bool visited(oop o) = 0; // check if object has been visited bool needs_reset() const { return _needs_reset; } void set_needs_reset(bool v) { _needs_reset = v; } }; ! // ObjectMarker provides the mark and visited functions class DefaultObjectMarker : public ObjectMarker { private: // saved headers GrowableArray<oop>* _saved_oop_stack; GrowableArray<markWord>* _saved_mark_stack; --- 33,58 ---- // heap. class ObjectMarker : public CHeapObj<mtInternal> { protected: bool _needs_reset; public: ! // initialize ! virtual bool init() = 0; ! // clean-up ! virtual void done() = 0; // mark an object if not yet marked. // return true if the oop is marked by this call virtual bool mark(oop o) = 0; ! // check if the object has been ! virtual bool marked(oop o) = 0; bool needs_reset() const { return _needs_reset; } void set_needs_reset(bool v) { _needs_reset = v; } }; ! // Default implementation class DefaultObjectMarker : public ObjectMarker { private: // saved headers GrowableArray<oop>* _saved_oop_stack; GrowableArray<markWord>* _saved_mark_stack;
*** 58,66 **** DefaultObjectMarker(); bool init(); void done(); bool mark(oop o); ! bool visited(oop o); }; #endif // SHARE_GC_SHARED_OBJECTMARKER_HPP --- 61,69 ---- DefaultObjectMarker(); bool init(); void done(); bool mark(oop o); ! bool marked(oop o); }; #endif // SHARE_GC_SHARED_OBJECTMARKER_HPP
< prev index next >