src/share/vm/memory/genRemSet.hpp

changeset 777
37f87013dfd8
parent 548
ba764ed4b6f2
child 791
1ee8caae33af
     1.1 --- a/src/share/vm/memory/genRemSet.hpp	Wed Jun 04 13:51:09 2008 -0700
     1.2 +++ b/src/share/vm/memory/genRemSet.hpp	Thu Jun 05 15:57:56 2008 -0700
     1.3 @@ -42,6 +42,7 @@
     1.4    };
     1.5  
     1.6    GenRemSet(BarrierSet * bs) : _bs(bs) {}
     1.7 +  GenRemSet() : _bs(NULL) {}
     1.8  
     1.9    virtual Name rs_kind() = 0;
    1.10  
    1.11 @@ -53,6 +54,9 @@
    1.12    // Return the barrier set associated with "this."
    1.13    BarrierSet* bs() { return _bs; }
    1.14  
    1.15 +  // Set the barrier set.
    1.16 +  void set_bs(BarrierSet* bs) { _bs = bs; }
    1.17 +
    1.18    // Do any (sequential) processing necessary to prepare for (possibly
    1.19    // "parallel", if that arg is true) calls to younger_refs_iterate.
    1.20    virtual void prepare_for_younger_refs_iterate(bool parallel) = 0;
    1.21 @@ -116,7 +120,10 @@
    1.22  
    1.23    // Informs the RS that refs in the given "mr" may have changed
    1.24    // arbitrarily, and therefore may contain old-to-young pointers.
    1.25 -  virtual void invalidate(MemRegion mr) = 0;
    1.26 +  // If "whole heap" is true, then this invalidation is part of an
    1.27 +  // invalidation of the whole heap, which an implementation might
    1.28 +  // handle differently than that of a sub-part of the heap.
    1.29 +  virtual void invalidate(MemRegion mr, bool whole_heap = false) = 0;
    1.30  
    1.31    // Informs the RS that refs in this generation
    1.32    // may have changed arbitrarily, and therefore may contain

mercurial