src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.hpp

changeset 2061
9d7a8ab3736b
parent 2020
a93a9eda13f7
child 2314
f95d63e2154a
     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  };

mercurial