src/share/vm/memory/defNewGeneration.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File 7089790_headers_only Sdiff src/share/vm/memory

src/share/vm/memory/defNewGeneration.cpp

Print this page
rev 2694 : imported patch headers_only


  31 #include "memory/genCollectedHeap.hpp"
  32 #include "memory/genOopClosures.inline.hpp"
  33 #include "memory/generationSpec.hpp"
  34 #include "memory/iterator.hpp"
  35 #include "memory/referencePolicy.hpp"
  36 #include "memory/space.inline.hpp"
  37 #include "oops/instanceRefKlass.hpp"
  38 #include "oops/oop.inline.hpp"
  39 #include "runtime/java.hpp"
  40 #include "utilities/copy.hpp"
  41 #include "utilities/stack.inline.hpp"
  42 #ifdef TARGET_OS_FAMILY_linux
  43 # include "thread_linux.inline.hpp"
  44 #endif
  45 #ifdef TARGET_OS_FAMILY_solaris
  46 # include "thread_solaris.inline.hpp"
  47 #endif
  48 #ifdef TARGET_OS_FAMILY_windows
  49 # include "thread_windows.inline.hpp"
  50 #endif



  51 
  52 //
  53 // DefNewGeneration functions.
  54 
  55 // Methods of protected closure types.
  56 
  57 DefNewGeneration::IsAliveClosure::IsAliveClosure(Generation* g) : _g(g) {
  58   assert(g->level() == 0, "Optimized for youngest gen.");
  59 }
  60 void DefNewGeneration::IsAliveClosure::do_object(oop p) {
  61   assert(false, "Do not call.");
  62 }
  63 bool DefNewGeneration::IsAliveClosure::do_object_b(oop p) {
  64   return (HeapWord*)p >= _g->reserved().end() || p->is_forwarded();
  65 }
  66 
  67 DefNewGeneration::KeepAliveClosure::
  68 KeepAliveClosure(ScanWeakRefClosure* cl) : _cl(cl) {
  69   GenRemSet* rs = GenCollectedHeap::heap()->rem_set();
  70   assert(rs->rs_kind() == GenRemSet::CardTable, "Wrong rem set kind.");




  31 #include "memory/genCollectedHeap.hpp"
  32 #include "memory/genOopClosures.inline.hpp"
  33 #include "memory/generationSpec.hpp"
  34 #include "memory/iterator.hpp"
  35 #include "memory/referencePolicy.hpp"
  36 #include "memory/space.inline.hpp"
  37 #include "oops/instanceRefKlass.hpp"
  38 #include "oops/oop.inline.hpp"
  39 #include "runtime/java.hpp"
  40 #include "utilities/copy.hpp"
  41 #include "utilities/stack.inline.hpp"
  42 #ifdef TARGET_OS_FAMILY_linux
  43 # include "thread_linux.inline.hpp"
  44 #endif
  45 #ifdef TARGET_OS_FAMILY_solaris
  46 # include "thread_solaris.inline.hpp"
  47 #endif
  48 #ifdef TARGET_OS_FAMILY_windows
  49 # include "thread_windows.inline.hpp"
  50 #endif
  51 #ifdef TARGET_OS_FAMILY_bsd
  52 # include "thread_bsd.inline.hpp"
  53 #endif
  54 
  55 //
  56 // DefNewGeneration functions.
  57 
  58 // Methods of protected closure types.
  59 
  60 DefNewGeneration::IsAliveClosure::IsAliveClosure(Generation* g) : _g(g) {
  61   assert(g->level() == 0, "Optimized for youngest gen.");
  62 }
  63 void DefNewGeneration::IsAliveClosure::do_object(oop p) {
  64   assert(false, "Do not call.");
  65 }
  66 bool DefNewGeneration::IsAliveClosure::do_object_b(oop p) {
  67   return (HeapWord*)p >= _g->reserved().end() || p->is_forwarded();
  68 }
  69 
  70 DefNewGeneration::KeepAliveClosure::
  71 KeepAliveClosure(ScanWeakRefClosure* cl) : _cl(cl) {
  72   GenRemSet* rs = GenCollectedHeap::heap()->rem_set();
  73   assert(rs->rs_kind() == GenRemSet::CardTable, "Wrong rem set kind.");


src/share/vm/memory/defNewGeneration.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File