< prev index next >

src/share/vm/classfile/javaClasses.cpp

Print this page
rev 10624 : [backport] Allocation path should not touch GC barriers for metadata


 636     if (!k.is_null()) {
 637       k->set_java_mirror(mirror());
 638     }
 639   } else {
 640     if (fixup_mirror_list() == NULL) {
 641       GrowableArray<Klass*>* list =
 642        new (ResourceObj::C_HEAP, mtClass) GrowableArray<Klass*>(40, true);
 643       set_fixup_mirror_list(list);
 644     }
 645     fixup_mirror_list()->push(k());
 646   }
 647 }
 648 
 649 
 650 int  java_lang_Class::oop_size(oop java_class) {
 651   assert(_oop_size_offset != 0, "must be set");
 652   return java_class->int_field(_oop_size_offset);
 653 }
 654 void java_lang_Class::set_oop_size(oop java_class, int size) {
 655   assert(_oop_size_offset != 0, "must be set");
 656   java_class->int_field_put(_oop_size_offset, size);
 657 }
 658 int  java_lang_Class::static_oop_field_count(oop java_class) {
 659   assert(_static_oop_field_count_offset != 0, "must be set");
 660   return java_class->int_field(_static_oop_field_count_offset);
 661 }
 662 void java_lang_Class::set_static_oop_field_count(oop java_class, int size) {
 663   assert(_static_oop_field_count_offset != 0, "must be set");
 664   java_class->int_field_put(_static_oop_field_count_offset, size);
 665 }
 666 
 667 oop java_lang_Class::protection_domain(oop java_class) {
 668   assert(_protection_domain_offset != 0, "must be set");
 669   return java_class->obj_field(_protection_domain_offset);
 670 }
 671 void java_lang_Class::set_protection_domain(oop java_class, oop pd) {
 672   assert(_protection_domain_offset != 0, "must be set");
 673   java_class->obj_field_put(_protection_domain_offset, pd);
 674 }
 675 
 676 oop java_lang_Class::init_lock(oop java_class) {




 636     if (!k.is_null()) {
 637       k->set_java_mirror(mirror());
 638     }
 639   } else {
 640     if (fixup_mirror_list() == NULL) {
 641       GrowableArray<Klass*>* list =
 642        new (ResourceObj::C_HEAP, mtClass) GrowableArray<Klass*>(40, true);
 643       set_fixup_mirror_list(list);
 644     }
 645     fixup_mirror_list()->push(k());
 646   }
 647 }
 648 
 649 
 650 int  java_lang_Class::oop_size(oop java_class) {
 651   assert(_oop_size_offset != 0, "must be set");
 652   return java_class->int_field(_oop_size_offset);
 653 }
 654 void java_lang_Class::set_oop_size(oop java_class, int size) {
 655   assert(_oop_size_offset != 0, "must be set");
 656   java_class->int_field_put_raw(_oop_size_offset, size);
 657 }
 658 int  java_lang_Class::static_oop_field_count(oop java_class) {
 659   assert(_static_oop_field_count_offset != 0, "must be set");
 660   return java_class->int_field(_static_oop_field_count_offset);
 661 }
 662 void java_lang_Class::set_static_oop_field_count(oop java_class, int size) {
 663   assert(_static_oop_field_count_offset != 0, "must be set");
 664   java_class->int_field_put(_static_oop_field_count_offset, size);
 665 }
 666 
 667 oop java_lang_Class::protection_domain(oop java_class) {
 668   assert(_protection_domain_offset != 0, "must be set");
 669   return java_class->obj_field(_protection_domain_offset);
 670 }
 671 void java_lang_Class::set_protection_domain(oop java_class, oop pd) {
 672   assert(_protection_domain_offset != 0, "must be set");
 673   java_class->obj_field_put(_protection_domain_offset, pd);
 674 }
 675 
 676 oop java_lang_Class::init_lock(oop java_class) {


< prev index next >