1.1 --- a/src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.hpp Mon Aug 02 12:51:43 2010 -0700 1.2 +++ b/src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.hpp Thu Jul 22 10:27:41 2010 -0400 1.3 @@ -48,7 +48,6 @@ 1.4 private: 1.5 static PSPromotionManager** _manager_array; 1.6 static OopStarTaskQueueSet* _stack_array_depth; 1.7 - static OopTaskQueueSet* _stack_array_breadth; 1.8 static PSOldGen* _old_gen; 1.9 static MutableSpace* _young_space; 1.10 1.11 @@ -69,12 +68,10 @@ 1.12 PSOldPromotionLAB _old_lab; 1.13 bool _young_gen_is_full; 1.14 bool _old_gen_is_full; 1.15 - PrefetchQueue _prefetch_queue; 1.16 1.17 OopStarTaskQueue _claimed_stack_depth; 1.18 OverflowTaskQueue<oop> _claimed_stack_breadth; 1.19 1.20 - bool _depth_first; 1.21 bool _totally_drain; 1.22 uint _target_stack_size; 1.23 1.24 @@ -87,7 +84,6 @@ 1.25 1.26 inline static PSPromotionManager* manager_array(int index); 1.27 template <class T> inline void claim_or_forward_internal_depth(T* p); 1.28 - template <class T> inline void claim_or_forward_internal_breadth(T* p); 1.29 1.30 // On the task queues we push reference locations as well as 1.31 // partially-scanned arrays (in the latter case, we push an oop to 1.32 @@ -136,19 +132,11 @@ 1.33 void process_array_chunk(oop old); 1.34 1.35 template <class T> void push_depth(T* p) { 1.36 - assert(depth_first(), "pre-condition"); 1.37 claimed_stack_depth()->push(p); 1.38 } 1.39 1.40 - void push_breadth(oop o) { 1.41 - assert(!depth_first(), "pre-condition"); 1.42 - claimed_stack_breadth()->push(o); 1.43 - } 1.44 - 1.45 protected: 1.46 static OopStarTaskQueueSet* stack_array_depth() { return _stack_array_depth; } 1.47 - static OopTaskQueueSet* stack_array_breadth() { return _stack_array_breadth; } 1.48 - 1.49 public: 1.50 // Static 1.51 static void initialize(); 1.52 @@ -163,19 +151,12 @@ 1.53 return stack_array_depth()->steal(queue_num, seed, t); 1.54 } 1.55 1.56 - static bool steal_breadth(int queue_num, int* seed, oop& t) { 1.57 - return stack_array_breadth()->steal(queue_num, seed, t); 1.58 - } 1.59 - 1.60 PSPromotionManager(); 1.61 1.62 // Accessors 1.63 OopStarTaskQueue* claimed_stack_depth() { 1.64 return &_claimed_stack_depth; 1.65 } 1.66 - OverflowTaskQueue<oop>* claimed_stack_breadth() { 1.67 - return &_claimed_stack_breadth; 1.68 - } 1.69 1.70 bool young_gen_is_full() { return _young_gen_is_full; } 1.71 1.72 @@ -183,18 +164,14 @@ 1.73 void set_old_gen_is_full(bool state) { _old_gen_is_full = state; } 1.74 1.75 // Promotion methods 1.76 - oop copy_to_survivor_space(oop o, bool depth_first); 1.77 + oop copy_to_survivor_space(oop o); 1.78 oop oop_promotion_failed(oop obj, markOop obj_mark); 1.79 1.80 void reset(); 1.81 1.82 void flush_labs(); 1.83 void drain_stacks(bool totally_drain) { 1.84 - if (depth_first()) { 1.85 - drain_stacks_depth(totally_drain); 1.86 - } else { 1.87 - drain_stacks_breadth(totally_drain); 1.88 - } 1.89 + drain_stacks_depth(totally_drain); 1.90 } 1.91 public: 1.92 void drain_stacks_cond_depth() { 1.93 @@ -203,22 +180,14 @@ 1.94 } 1.95 } 1.96 void drain_stacks_depth(bool totally_drain); 1.97 - void drain_stacks_breadth(bool totally_drain); 1.98 1.99 - bool depth_first() const { 1.100 - return _depth_first; 1.101 - } 1.102 bool stacks_empty() { 1.103 - return depth_first() ? 1.104 - claimed_stack_depth()->is_empty() : 1.105 - claimed_stack_breadth()->is_empty(); 1.106 + return claimed_stack_depth()->is_empty(); 1.107 } 1.108 1.109 inline void process_popped_location_depth(StarTask p); 1.110 1.111 - inline void flush_prefetch_queue(); 1.112 template <class T> inline void claim_or_forward_depth(T* p); 1.113 - template <class T> inline void claim_or_forward_breadth(T* p); 1.114 1.115 TASKQUEUE_STATS_ONLY(inline void record_steal(StarTask& p);) 1.116 };