src/share/vm/gc_implementation/g1/g1_specialized_oop_closures.hpp

Print this page

        

*** 28,45 **** // The following OopClosure types get specialized versions of // "oop_oop_iterate" that invoke the closures' do_oop methods // non-virtually, using a mechanism defined in this file. Extend these // macros in the obvious way to add specializations for new closures. - // Forward declarations. enum G1Barrier { G1BarrierNone, G1BarrierEvac, G1BarrierKlass }; ! template<G1Barrier barrier, bool do_mark_object> class G1ParCopyClosure; class G1ParScanClosure; class G1ParPushHeapRSClosure; --- 28,52 ---- // The following OopClosure types get specialized versions of // "oop_oop_iterate" that invoke the closures' do_oop methods // non-virtually, using a mechanism defined in this file. Extend these // macros in the obvious way to add specializations for new closures. enum G1Barrier { G1BarrierNone, G1BarrierEvac, G1BarrierKlass }; ! enum G1Mark { ! G1MarkNone, ! G1MarkFromRoot, ! G1MarkPromotedFromRoot ! }; ! ! // Forward declarations. ! ! template<G1Barrier barrier, G1Mark do_mark_object> class G1ParCopyClosure; class G1ParScanClosure; class G1ParPushHeapRSClosure;