hotspot/src/share/vm/memory/cardTableRS.hpp
changeset 9336 413920193f83
parent 7397 5b173b4ca846
child 9624 c3657c3324ee
equal deleted inserted replaced
9334:640f1a6f0b85 9336:413920193f83
     1 /*
     1 /*
     2  * Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 2001, 2011, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.
     7  * published by the Free Software Foundation.
   164     return cv == CardTableRS::cur_youngergen_and_prev_nonclean_card;
   164     return cv == CardTableRS::cur_youngergen_and_prev_nonclean_card;
   165   }
   165   }
   166 
   166 
   167 };
   167 };
   168 
   168 
       
   169 class ClearNoncleanCardWrapper: public MemRegionClosure {
       
   170   MemRegionClosure* _dirty_card_closure;
       
   171   CardTableRS* _ct;
       
   172   bool _is_par;
       
   173 private:
       
   174   // Clears the given card, return true if the corresponding card should be
       
   175   // processed.
       
   176   inline bool clear_card(jbyte* entry);
       
   177   // Work methods called by the clear_card()
       
   178   inline bool clear_card_serial(jbyte* entry);
       
   179   inline bool clear_card_parallel(jbyte* entry);
       
   180 
       
   181 public:
       
   182   ClearNoncleanCardWrapper(MemRegionClosure* dirty_card_closure, CardTableRS* ct);
       
   183   void do_MemRegion(MemRegion mr);
       
   184 };
       
   185 
   169 #endif // SHARE_VM_MEMORY_CARDTABLERS_HPP
   186 #endif // SHARE_VM_MEMORY_CARDTABLERS_HPP