equal
deleted
inserted
replaced
177 // |
177 // |
178 // Make an array klass corresponding to the specified primitive type. |
178 // Make an array klass corresponding to the specified primitive type. |
179 ciObjArrayKlass* ciObjArrayKlass::make(ciKlass* element_klass) { |
179 ciObjArrayKlass* ciObjArrayKlass::make(ciKlass* element_klass) { |
180 GUARDED_VM_ENTRY(return make_impl(element_klass);) |
180 GUARDED_VM_ENTRY(return make_impl(element_klass);) |
181 } |
181 } |
|
182 |
|
183 ciKlass* ciObjArrayKlass::exact_klass() { |
|
184 ciType* base = base_element_type(); |
|
185 if (base->is_instance_klass()) { |
|
186 ciInstanceKlass* ik = base->as_instance_klass(); |
|
187 if (ik->exact_klass() != NULL) { |
|
188 return this; |
|
189 } |
|
190 } else if (base->is_primitive_type()) { |
|
191 return this; |
|
192 } |
|
193 return NULL; |
|
194 } |