1.1 --- a/src/share/vm/ci/ciObjArrayKlass.cpp Wed Oct 09 11:05:17 2013 -0700 1.2 +++ b/src/share/vm/ci/ciObjArrayKlass.cpp Wed Oct 09 16:32:21 2013 +0200 1.3 @@ -179,3 +179,16 @@ 1.4 ciObjArrayKlass* ciObjArrayKlass::make(ciKlass* element_klass) { 1.5 GUARDED_VM_ENTRY(return make_impl(element_klass);) 1.6 } 1.7 + 1.8 +ciKlass* ciObjArrayKlass::exact_klass() { 1.9 + ciType* base = base_element_type(); 1.10 + if (base->is_instance_klass()) { 1.11 + ciInstanceKlass* ik = base->as_instance_klass(); 1.12 + if (ik->exact_klass() != NULL) { 1.13 + return this; 1.14 + } 1.15 + } else if (base->is_primitive_type()) { 1.16 + return this; 1.17 + } 1.18 + return NULL; 1.19 +}