1.1 --- a/src/share/vm/gc_implementation/parNew/parNewGeneration.hpp Wed Jan 21 13:40:10 2009 -0800 1.2 +++ b/src/share/vm/gc_implementation/parNew/parNewGeneration.hpp Mon Jan 26 12:47:21 2009 -0800 1.3 @@ -278,6 +278,7 @@ 1.4 friend class ParNewRefProcTask; 1.5 friend class ParNewRefProcTaskExecutor; 1.6 friend class ParScanThreadStateSet; 1.7 + friend class ParEvacuateFollowersClosure; 1.8 1.9 private: 1.10 // XXX use a global constant instead of 64! 1.11 @@ -296,6 +297,7 @@ 1.12 // klass-pointers (klass information already copied to the forwarded 1.13 // image.) Manipulated with CAS. 1.14 oop _overflow_list; 1.15 + NOT_PRODUCT(ssize_t _num_par_pushes;) 1.16 1.17 // If true, older generation does not support promotion undo, so avoid. 1.18 static bool _avoid_promotion_undo; 1.19 @@ -372,8 +374,12 @@ 1.20 oop copy_to_survivor_space_with_undo(ParScanThreadState* par_scan_state, 1.21 oop obj, size_t obj_sz, markOop m); 1.22 1.23 + // in support of testing overflow code 1.24 + NOT_PRODUCT(int _overflow_counter;) 1.25 + NOT_PRODUCT(bool should_simulate_overflow();) 1.26 + 1.27 // Push the given (from-space) object on the global overflow list. 1.28 - void push_on_overflow_list(oop from_space_obj); 1.29 + void push_on_overflow_list(oop from_space_obj, ParScanThreadState* par_scan_state); 1.30 1.31 // If the global overflow list is non-empty, move some tasks from it 1.32 // onto "work_q" (which must be empty). No more than 1/4 of the