< prev index next >
src/hotspot/share/c1/c1_Instruction.cpp
Print this page
@@ -220,11 +220,16 @@
ciType* NewTypeArray::exact_type() const {
return ciTypeArrayKlass::make(elt_type());
}
ciType* NewObjectArray::exact_type() const {
- return ciObjArrayKlass::make(klass());
+ ciKlass* element_klass = klass();
+ if (element_klass->is_valuetype()) {
+ return ciValueArrayKlass::make(element_klass);
+ } else {
+ return ciObjArrayKlass::make(element_klass);
+ }
}
ciType* NewArray::declared_type() const {
return exact_type();
}
< prev index next >