< prev index next >

src/hotspot/share/gc/shared/cardTable.hpp

Print this page
rev 55404 : 8226197: Reducing G1?s CPU cost with simplified write post-barrier and disabling concurrent refinement
Summary: A prototype to add a mode for G1 to use a simplified write post-barrier. Guarded by new flag G1FastWriteBarrier.


 252   // Card marking array base (adjusted for heap low boundary)
 253   // This would be the 0th element of _byte_map, if the heap started at 0x0.
 254   // But since the heap starts at some higher address, this points to somewhere
 255   // before the beginning of the actual _byte_map.
 256   CardValue* byte_map_base() const { return _byte_map_base; }
 257   bool scanned_concurrently() const { return _scanned_concurrently; }
 258 
 259   virtual bool is_in_young(oop obj) const = 0;
 260 
 261   // Print a description of the memory for the card table
 262   virtual void print_on(outputStream* st) const;
 263 
 264   void verify();
 265   void verify_guard();
 266 
 267   // val_equals -> it will check that all cards covered by mr equal val
 268   // !val_equals -> it will check that all cards covered by mr do not equal val
 269   void verify_region(MemRegion mr, CardValue val, bool val_equals) PRODUCT_RETURN;
 270   void verify_not_dirty_region(MemRegion mr) PRODUCT_RETURN;
 271   void verify_dirty_region(MemRegion mr) PRODUCT_RETURN;


 272 };
 273 
 274 #endif // SHARE_GC_SHARED_CARDTABLE_HPP


 252   // Card marking array base (adjusted for heap low boundary)
 253   // This would be the 0th element of _byte_map, if the heap started at 0x0.
 254   // But since the heap starts at some higher address, this points to somewhere
 255   // before the beginning of the actual _byte_map.
 256   CardValue* byte_map_base() const { return _byte_map_base; }
 257   bool scanned_concurrently() const { return _scanned_concurrently; }
 258 
 259   virtual bool is_in_young(oop obj) const = 0;
 260 
 261   // Print a description of the memory for the card table
 262   virtual void print_on(outputStream* st) const;
 263 
 264   void verify();
 265   void verify_guard();
 266 
 267   // val_equals -> it will check that all cards covered by mr equal val
 268   // !val_equals -> it will check that all cards covered by mr do not equal val
 269   void verify_region(MemRegion mr, CardValue val, bool val_equals) PRODUCT_RETURN;
 270   void verify_not_dirty_region(MemRegion mr) PRODUCT_RETURN;
 271   void verify_dirty_region(MemRegion mr) PRODUCT_RETURN;
 272 
 273   void print_content_for_mr(MemRegion mr, outputStream* st) const PRODUCT_RETURN;
 274 };
 275 
 276 #endif // SHARE_GC_SHARED_CARDTABLE_HPP
< prev index next >