src/hotspot/share/gc/g1/g1HotCardCache.hpp
changeset 53747 13acc8e38a29
parent 53244 9807daeb47c4
child 54110 f4f0dce5d0bb
equal deleted inserted replaced
53746:bdccafc038a2 53747:13acc8e38a29
    30 #include "memory/allocation.hpp"
    30 #include "memory/allocation.hpp"
    31 #include "runtime/safepoint.hpp"
    31 #include "runtime/safepoint.hpp"
    32 #include "runtime/thread.hpp"
    32 #include "runtime/thread.hpp"
    33 #include "utilities/globalDefinitions.hpp"
    33 #include "utilities/globalDefinitions.hpp"
    34 
    34 
    35 class CardTableEntryClosure;
    35 class G1CardTableEntryClosure;
    36 class DirtyCardQueue;
       
    37 class G1CollectedHeap;
    36 class G1CollectedHeap;
    38 class HeapRegion;
    37 class HeapRegion;
    39 
    38 
    40 // An evicting cache of cards that have been logged by the G1 post
    39 // An evicting cache of cards that have been logged by the G1 post
    41 // write barrier. Placing a card in the cache delays the refinement
    40 // write barrier. Placing a card in the cache delays the refinement
   110   // the evicted card is then returned for refinement.
   109   // the evicted card is then returned for refinement.
   111   jbyte* insert(jbyte* card_ptr);
   110   jbyte* insert(jbyte* card_ptr);
   112 
   111 
   113   // Refine the cards that have delayed as a result of
   112   // Refine the cards that have delayed as a result of
   114   // being in the cache.
   113   // being in the cache.
   115   void drain(CardTableEntryClosure* cl, uint worker_i);
   114   void drain(G1CardTableEntryClosure* cl, uint worker_i);
   116 
   115 
   117   // Set up for parallel processing of the cards in the hot cache
   116   // Set up for parallel processing of the cards in the hot cache
   118   void reset_hot_cache_claimed_index() {
   117   void reset_hot_cache_claimed_index() {
   119     _hot_cache_par_claimed_idx = 0;
   118     _hot_cache_par_claimed_idx = 0;
   120   }
   119   }