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

changeset 2191
894b1d7c7e01
parent 1907
c18cbe5936b8
child 2314
f95d63e2154a
     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  

mercurial