1.1 --- a/src/share/vm/gc_implementation/parallelScavenge/psScavenge.hpp Tue Sep 28 09:51:37 2010 -0700 1.2 +++ b/src/share/vm/gc_implementation/parallelScavenge/psScavenge.hpp Tue Sep 28 15:56:15 2010 -0700 1.3 @@ -61,9 +61,10 @@ 1.4 static HeapWord* _young_generation_boundary; // The lowest address possible for the young_gen. 1.5 // This is used to decide if an oop should be scavenged, 1.6 // cards should be marked, etc. 1.7 - static GrowableArray<markOop>* _preserved_mark_stack; // List of marks to be restored after failed promotion 1.8 - static GrowableArray<oop>* _preserved_oop_stack; // List of oops that need their mark restored. 1.9 + static Stack<markOop> _preserved_mark_stack; // List of marks to be restored after failed promotion 1.10 + static Stack<oop> _preserved_oop_stack; // List of oops that need their mark restored. 1.11 static CollectorCounters* _counters; // collector performance counters 1.12 + static bool _promotion_failed; 1.13 1.14 static void clean_up_failed_promotion(); 1.15 1.16 @@ -79,8 +80,7 @@ 1.17 // Accessors 1.18 static int tenuring_threshold() { return _tenuring_threshold; } 1.19 static elapsedTimer* accumulated_time() { return &_accumulated_time; } 1.20 - static bool promotion_failed() 1.21 - { return _preserved_mark_stack != NULL; } 1.22 + static bool promotion_failed() { return _promotion_failed; } 1.23 static int consecutive_skipped_scavenges() 1.24 { return _consecutive_skipped_scavenges; } 1.25