提交 c25aff6c 编写于 作者: K kvn

7026631: field _klass is incorrectly set for dual type of TypeAryPtr::OOPS

Summary: add missing check this->dual() != TypeAryPtr::OOPS into TypeAryPtr::klass().
Reviewed-by: never
上级 9474ff7b
...@@ -3781,7 +3781,7 @@ ciKlass* TypeAryPtr::klass() const { ...@@ -3781,7 +3781,7 @@ ciKlass* TypeAryPtr::klass() const {
// Oops, need to compute _klass and cache it // Oops, need to compute _klass and cache it
ciKlass* k_ary = compute_klass(); ciKlass* k_ary = compute_klass();
if( this != TypeAryPtr::OOPS ) { if( this != TypeAryPtr::OOPS && this->dual() != TypeAryPtr::OOPS ) {
// The _klass field acts as a cache of the underlying // The _klass field acts as a cache of the underlying
// ciKlass for this array type. In order to set the field, // ciKlass for this array type. In order to set the field,
// we need to cast away const-ness. // we need to cast away const-ness.
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册