hotspot/src/share/vm/gc/g1/g1EvacFailure.hpp
changeset 36202 219f8808c3bd
parent 35943 e726308008c0
child 38081 a3bcb7197d45
equal deleted inserted replaced
36200:d18466a7dcee 36202:219f8808c3bd
    25 #ifndef SHARE_VM_GC_G1_G1EVACFAILURE_HPP
    25 #ifndef SHARE_VM_GC_G1_G1EVACFAILURE_HPP
    26 #define SHARE_VM_GC_G1_G1EVACFAILURE_HPP
    26 #define SHARE_VM_GC_G1_G1EVACFAILURE_HPP
    27 
    27 
    28 #include "gc/g1/g1OopClosures.hpp"
    28 #include "gc/g1/g1OopClosures.hpp"
    29 #include "gc/g1/heapRegionManager.hpp"
    29 #include "gc/g1/heapRegionManager.hpp"
       
    30  #include "gc/shared/preservedMarks.hpp"
    30 #include "gc/shared/workgroup.hpp"
    31 #include "gc/shared/workgroup.hpp"
    31 #include "utilities/globalDefinitions.hpp"
    32 #include "utilities/globalDefinitions.hpp"
    32 
    33 
    33 class G1CollectedHeap;
    34 class G1CollectedHeap;
    34 
       
    35 class OopAndMarkOop {
       
    36   oop _o;
       
    37   markOop _m;
       
    38  public:
       
    39   OopAndMarkOop(oop obj, markOop m) : _o(obj), _m(m) {
       
    40   }
       
    41 
       
    42   void set_mark() {
       
    43     _o->set_mark(_m);
       
    44   }
       
    45 };
       
    46 
       
    47 typedef Stack<OopAndMarkOop,mtGC> OopAndMarkOopStack;
       
    48 
    35 
    49 // Task to fixup self-forwarding pointers
    36 // Task to fixup self-forwarding pointers
    50 // installed as a result of an evacuation failure.
    37 // installed as a result of an evacuation failure.
    51 class G1ParRemoveSelfForwardPtrsTask: public AbstractGangTask {
    38 class G1ParRemoveSelfForwardPtrsTask: public AbstractGangTask {
    52 protected:
    39 protected: