src/share/vm/gc_implementation/g1/dirtyCardQueue.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File 7089790_full Sdiff src/share/vm/gc_implementation/g1

src/share/vm/gc_implementation/g1/dirtyCardQueue.cpp

Print this page
rev 2694 : imported patch headers_only


  22  *
  23  */
  24 
  25 #include "precompiled.hpp"
  26 #include "gc_implementation/g1/dirtyCardQueue.hpp"
  27 #include "gc_implementation/g1/heapRegionRemSet.hpp"
  28 #include "runtime/atomic.hpp"
  29 #include "runtime/mutexLocker.hpp"
  30 #include "runtime/safepoint.hpp"
  31 #include "runtime/thread.hpp"
  32 #include "utilities/workgroup.hpp"
  33 #ifdef TARGET_OS_FAMILY_linux
  34 # include "thread_linux.inline.hpp"
  35 #endif
  36 #ifdef TARGET_OS_FAMILY_solaris
  37 # include "thread_solaris.inline.hpp"
  38 #endif
  39 #ifdef TARGET_OS_FAMILY_windows
  40 # include "thread_windows.inline.hpp"
  41 #endif



  42 
  43 bool DirtyCardQueue::apply_closure(CardTableEntryClosure* cl,
  44                                    bool consume,
  45                                    size_t worker_i) {
  46   bool res = true;
  47   if (_buf != NULL) {
  48     res = apply_closure_to_buffer(cl, _buf, _index, _sz,
  49                                   consume,
  50                                   (int) worker_i);
  51     if (res && consume) _index = _sz;
  52   }
  53   return res;
  54 }
  55 
  56 bool DirtyCardQueue::apply_closure_to_buffer(CardTableEntryClosure* cl,
  57                                              void** buf,
  58                                              size_t index, size_t sz,
  59                                              bool consume,
  60                                              int worker_i) {
  61   if (cl == NULL) return true;




  22  *
  23  */
  24 
  25 #include "precompiled.hpp"
  26 #include "gc_implementation/g1/dirtyCardQueue.hpp"
  27 #include "gc_implementation/g1/heapRegionRemSet.hpp"
  28 #include "runtime/atomic.hpp"
  29 #include "runtime/mutexLocker.hpp"
  30 #include "runtime/safepoint.hpp"
  31 #include "runtime/thread.hpp"
  32 #include "utilities/workgroup.hpp"
  33 #ifdef TARGET_OS_FAMILY_linux
  34 # include "thread_linux.inline.hpp"
  35 #endif
  36 #ifdef TARGET_OS_FAMILY_solaris
  37 # include "thread_solaris.inline.hpp"
  38 #endif
  39 #ifdef TARGET_OS_FAMILY_windows
  40 # include "thread_windows.inline.hpp"
  41 #endif
  42 #ifdef TARGET_OS_FAMILY_bsd
  43 # include "thread_bsd.inline.hpp"
  44 #endif
  45 
  46 bool DirtyCardQueue::apply_closure(CardTableEntryClosure* cl,
  47                                    bool consume,
  48                                    size_t worker_i) {
  49   bool res = true;
  50   if (_buf != NULL) {
  51     res = apply_closure_to_buffer(cl, _buf, _index, _sz,
  52                                   consume,
  53                                   (int) worker_i);
  54     if (res && consume) _index = _sz;
  55   }
  56   return res;
  57 }
  58 
  59 bool DirtyCardQueue::apply_closure_to_buffer(CardTableEntryClosure* cl,
  60                                              void** buf,
  61                                              size_t index, size_t sz,
  62                                              bool consume,
  63                                              int worker_i) {
  64   if (cl == NULL) return true;


src/share/vm/gc_implementation/g1/dirtyCardQueue.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File