Esempio n. 1
0
inline void oopDesc::oop_iterate_header(OopClosure* blk, MemRegion mr) {
  if (UseCompressedOops) {
    if (mr.contains(compressed_klass_addr())) {
      blk->do_oop(compressed_klass_addr());
    }
  } else {
    if (mr.contains(klass_addr())) blk->do_oop(klass_addr());
  }
}
Esempio n. 2
0
inline void oopDesc::adjust_header() {
  if (UseCompressedOops) {
    MarkSweep::adjust_pointer(compressed_klass_addr());
  } else {
    MarkSweep::adjust_pointer(klass_addr());
  }
}
Esempio n. 3
0
inline void oopDesc::oop_iterate_header(OopClosure* blk) {
  if (UseCompressedOops) {
    blk->do_oop(compressed_klass_addr());
  } else {
    blk->do_oop(klass_addr());
  }
}
Esempio n. 4
0
inline void oopDesc::follow_header() {
  if (UseCompressedOops) {
    MarkSweep::mark_and_push(compressed_klass_addr());
  } else {
    MarkSweep::mark_and_push(klass_addr());
  }
}
void oopDesc::set_klass(Klass* k) {
  // since klasses are promoted no store check is needed
  assert(Universe::is_bootstrapping() || k != NULL, "must be a real Klass*");
  assert(Universe::is_bootstrapping() || k->is_klass(), "not a Klass*");
  if (UseCompressedClassPointers) {
    *compressed_klass_addr() = Klass::encode_klass_not_null(k);
  } else {
    *klass_addr() = k;
  }
}
Esempio n. 6
0
inline void oopDesc::set_klass(klassOop k) {
  // since klasses are promoted no store check is needed
  assert(Universe::is_bootstrapping() || k != NULL, "must be a real klassOop");
  assert(Universe::is_bootstrapping() || k->is_klass(), "not a klassOop");
  if (UseCompressedOops) {
    oop_store_without_check(compressed_klass_addr(), (oop)k);
  } else {
    oop_store_without_check(klass_addr(), (oop) k);
  }
}
Esempio n. 7
0
void PlaceholderEntry::oops_do(OopClosure* blk) {
  assert(klass() != NULL, "should have a non-null klass");
  blk->do_oop((oop*)klass_addr());
  if (_loader != NULL) {
    blk->do_oop(loader_addr());
  }
  if (_supername != NULL) {
    blk->do_oop((oop*)supername_addr());
  }
  if (_instanceKlass != NULL) {
    blk->do_oop((oop*)instanceKlass_addr());
  }
}