comparison src/share/vm/oops/klassPS.hpp @ 1706:9d7a8ab3736b

6962589: remove breadth first scanning code from parallel gc Summary: Remove the breadth-first copying order from ParallelScavenge and use depth-first by default. Reviewed-by: jcoomes, ysr, johnc
author tonyp
date Thu, 22 Jul 2010 10:27:41 -0400
parents c18cbe5936b8
children f95d63e2154a
comparison
equal deleted inserted replaced
1705:2d160770d2e5 1706:9d7a8ab3736b
26 26
27 // Expands to Parallel Scavenge and Parallel Old declarations 27 // Expands to Parallel Scavenge and Parallel Old declarations
28 28
29 #ifndef SERIALGC 29 #ifndef SERIALGC
30 #define PARALLEL_GC_DECLS \ 30 #define PARALLEL_GC_DECLS \
31 virtual void oop_copy_contents(PSPromotionManager* pm, oop obj); \
32 virtual void oop_push_contents(PSPromotionManager* pm, oop obj); \ 31 virtual void oop_push_contents(PSPromotionManager* pm, oop obj); \
33 /* Parallel Old GC support \ 32 /* Parallel Old GC support \
34 \ 33 \
35 The 2-arg version of oop_update_pointers is for objects that are \ 34 The 2-arg version of oop_update_pointers is for objects that are \
36 known not to cross chunk boundaries. The 4-arg version is for \ 35 known not to cross chunk boundaries. The 4-arg version is for \
41 virtual int oop_update_pointers(ParCompactionManager* cm, oop obj, \ 40 virtual int oop_update_pointers(ParCompactionManager* cm, oop obj, \
42 HeapWord* beg_addr, HeapWord* end_addr); 41 HeapWord* beg_addr, HeapWord* end_addr);
43 42
44 // Pure virtual version for klass.hpp 43 // Pure virtual version for klass.hpp
45 #define PARALLEL_GC_DECLS_PV \ 44 #define PARALLEL_GC_DECLS_PV \
46 virtual void oop_copy_contents(PSPromotionManager* pm, oop obj) = 0; \
47 virtual void oop_push_contents(PSPromotionManager* pm, oop obj) = 0; \ 45 virtual void oop_push_contents(PSPromotionManager* pm, oop obj) = 0; \
48 virtual void oop_follow_contents(ParCompactionManager* cm, oop obj) = 0; \ 46 virtual void oop_follow_contents(ParCompactionManager* cm, oop obj) = 0; \
49 virtual int oop_update_pointers(ParCompactionManager* cm, oop obj) = 0; \ 47 virtual int oop_update_pointers(ParCompactionManager* cm, oop obj) = 0; \
50 virtual int oop_update_pointers(ParCompactionManager* cm, oop obj, \ 48 virtual int oop_update_pointers(ParCompactionManager* cm, oop obj, \
51 HeapWord* beg_addr, HeapWord* end_addr) = 0; 49 HeapWord* beg_addr, HeapWord* end_addr) = 0;