src/hotspot/share/gc/g1/g1CardTable.hpp
changeset 59319 9ee940f1de90
parent 55510 3e31a8beaae4
equal deleted inserted replaced
59318:70021dbed82b 59319:9ee940f1de90
    90 
    90 
    91   size_t index_for_cardvalue(CardValue const* p) const {
    91   size_t index_for_cardvalue(CardValue const* p) const {
    92     return pointer_delta(p, _byte_map, sizeof(CardValue));
    92     return pointer_delta(p, _byte_map, sizeof(CardValue));
    93   }
    93   }
    94 
    94 
    95   // Mark the given card as Dirty if it is Clean.
    95   // Mark the given card as Dirty if it is Clean. Returns the number of dirtied
    96   inline void mark_clean_as_dirty(size_t card_index);
    96   // cards that were not yet dirty. This result may be inaccurate as it does not
       
    97   // perform the dirtying atomically.
       
    98   inline size_t mark_clean_as_dirty(size_t card_index);
    97 
    99 
    98   // Change Clean cards in a (large) area on the card table as Dirty, preserving
   100   // Change Clean cards in a (large) area on the card table as Dirty, preserving
    99   // already scanned cards. Assumes that most cards in that area are Clean.
   101   // already scanned cards. Assumes that most cards in that area are Clean.
   100   inline void mark_region_dirty(size_t start_card_index, size_t num_cards);
   102   // Returns the number of dirtied cards that were not yet dirty. This result may
       
   103   // be inaccurate as it does not perform the dirtying atomically.
       
   104   inline size_t mark_region_dirty(size_t start_card_index, size_t num_cards);
   101 
   105 
   102   // Mark the given range of cards as Scanned. All of these cards must be Dirty.
   106   // Mark the given range of cards as Scanned. All of these cards must be Dirty.
   103   inline void mark_as_scanned(size_t start_card_index, size_t num_cards);
   107   inline void mark_as_scanned(size_t start_card_index, size_t num_cards);
   104 
   108 
   105   inline uint region_idx_for(CardValue* p);
   109   inline uint region_idx_for(CardValue* p);