< prev index next >
src/hotspot/share/c1/c1_Instruction.cpp
Print this page
*** 220,230 ****
ciType* NewTypeArray::exact_type() const {
return ciTypeArrayKlass::make(elt_type());
}
ciType* NewObjectArray::exact_type() const {
! return ciObjArrayKlass::make(klass());
}
ciType* NewArray::declared_type() const {
return exact_type();
}
--- 220,235 ----
ciType* NewTypeArray::exact_type() const {
return ciTypeArrayKlass::make(elt_type());
}
ciType* NewObjectArray::exact_type() const {
! 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 >