comparison src/share/vm/oops/arrayKlass.cpp @ 20415:47e3110c47e8

6642881: Improve performance of Class.getClassLoader() Summary: Add classLoader to java/lang/Class instance for fast access Reviewed-by: alanb, lfoltan, rriggs, vlivanov, twisti, jfranck
author coleenp
date Fri, 05 Sep 2014 16:01:29 -0400
parents 6e0cb14ce59b
children 7d68a5b1069d f0bedf980c65
comparison
equal deleted inserted replaced
20407:9be4ca335650 20415:47e3110c47e8
91 // since a GC can happen. At this point all instance variables of the ArrayKlass must be setup. 91 // since a GC can happen. At this point all instance variables of the ArrayKlass must be setup.
92 void ArrayKlass::complete_create_array_klass(ArrayKlass* k, KlassHandle super_klass, TRAPS) { 92 void ArrayKlass::complete_create_array_klass(ArrayKlass* k, KlassHandle super_klass, TRAPS) {
93 ResourceMark rm(THREAD); 93 ResourceMark rm(THREAD);
94 k->initialize_supers(super_klass(), CHECK); 94 k->initialize_supers(super_klass(), CHECK);
95 k->vtable()->initialize_vtable(false, CHECK); 95 k->vtable()->initialize_vtable(false, CHECK);
96 java_lang_Class::create_mirror(k, Handle(NULL), CHECK); 96 java_lang_Class::create_mirror(k, Handle(NULL), Handle(NULL), CHECK);
97 } 97 }
98 98
99 GrowableArray<Klass*>* ArrayKlass::compute_secondary_supers(int num_extra_slots) { 99 GrowableArray<Klass*>* ArrayKlass::compute_secondary_supers(int num_extra_slots) {
100 // interfaces = { cloneable_klass, serializable_klass }; 100 // interfaces = { cloneable_klass, serializable_klass };
101 assert(num_extra_slots == 0, "sanity of primitive array type"); 101 assert(num_extra_slots == 0, "sanity of primitive array type");