src/share/vm/oops/instanceRefKlass.cpp

changeset 2061
9d7a8ab3736b
parent 1907
c18cbe5936b8
child 2314
f95d63e2154a
     1.1 --- a/src/share/vm/oops/instanceRefKlass.cpp	Mon Aug 02 12:51:43 2010 -0700
     1.2 +++ b/src/share/vm/oops/instanceRefKlass.cpp	Thu Jul 22 10:27:41 2010 -0400
     1.3 @@ -273,41 +273,8 @@
     1.4  
     1.5  #ifndef SERIALGC
     1.6  template <class T>
     1.7 -void specialized_oop_copy_contents(instanceRefKlass *ref,
     1.8 -                                   PSPromotionManager* pm, oop obj) {
     1.9 -  assert(!pm->depth_first(), "invariant");
    1.10 -  T* referent_addr = (T*)java_lang_ref_Reference::referent_addr(obj);
    1.11 -  if (PSScavenge::should_scavenge(referent_addr)) {
    1.12 -    ReferenceProcessor* rp = PSScavenge::reference_processor();
    1.13 -    if (rp->discover_reference(obj, ref->reference_type())) {
    1.14 -      // reference already enqueued, referent and next will be traversed later
    1.15 -      ref->instanceKlass::oop_copy_contents(pm, obj);
    1.16 -      return;
    1.17 -    } else {
    1.18 -      // treat referent as normal oop
    1.19 -      pm->claim_or_forward_breadth(referent_addr);
    1.20 -    }
    1.21 -  }
    1.22 -  // treat next as normal oop
    1.23 -  T* next_addr = (T*)java_lang_ref_Reference::next_addr(obj);
    1.24 -  if (PSScavenge::should_scavenge(next_addr)) {
    1.25 -    pm->claim_or_forward_breadth(next_addr);
    1.26 -  }
    1.27 -  ref->instanceKlass::oop_copy_contents(pm, obj);
    1.28 -}
    1.29 -
    1.30 -void instanceRefKlass::oop_copy_contents(PSPromotionManager* pm, oop obj) {
    1.31 -  if (UseCompressedOops) {
    1.32 -    specialized_oop_copy_contents<narrowOop>(this, pm, obj);
    1.33 -  } else {
    1.34 -    specialized_oop_copy_contents<oop>(this, pm, obj);
    1.35 -  }
    1.36 -}
    1.37 -
    1.38 -template <class T>
    1.39  void specialized_oop_push_contents(instanceRefKlass *ref,
    1.40                                     PSPromotionManager* pm, oop obj) {
    1.41 -  assert(pm->depth_first(), "invariant");
    1.42    T* referent_addr = (T*)java_lang_ref_Reference::referent_addr(obj);
    1.43    if (PSScavenge::should_scavenge(referent_addr)) {
    1.44      ReferenceProcessor* rp = PSScavenge::reference_processor();

mercurial