src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.hpp

Print this page
rev 5363 : imported patch filtering.diff

@@ -36,11 +36,18 @@
 
 // This barrier is specialized to use a logging barrier to support
 // snapshot-at-the-beginning marking.
 
 class G1SATBCardTableModRefBS: public CardTableModRefBSForCTRS {
+protected:
+  enum G1CardValues {
+    g1_young_gen = CT_MR_BS_last_reserved << 1
+  };
+
 public:
+  static int g1_young_card_val()   { return g1_young_gen; }
+
   // Add "pre_val" to a set of objects that may have been disconnected from the
   // pre-marking object graph.
   static void enqueue(oop pre_val);
 
   G1SATBCardTableModRefBS(MemRegion whole_heap,

@@ -116,10 +123,13 @@
         val |= (jbyte)claimed_card_val();
       }
       _byte_map[card_index] = val;
   }
 
+  void verify_g1_young_region(MemRegion mr) PRODUCT_RETURN;
+  void g1_mark_as_young(const MemRegion& mr);
+
   bool mark_card_deferred(size_t card_index);
 
   bool is_card_deferred(size_t card_index) {
     jbyte val = _byte_map[card_index];
     return (val & (clean_card_mask_val() | deferred_card_val())) == deferred_card_val();