< prev index next >

src/hotspot/share/opto/parse2.cpp

Print this page

        

*** 60,70 **** Node* ary = pop(); // in case of exception //dec_sp(2); // Pop array and index const TypeAryPtr* arytype = _gvn.type(ary)->is_aryptr(); if (arytype->klass()->is_value_array_klass()) { ciValueArrayKlass* vak = arytype->klass()->as_value_array_klass(); ! Node* vt = ValueTypeNode::make(this, vak->element_klass()->as_value_klass(), ary, adr); push(vt); return; } const TypeAryPtr* adr_type = TypeAryPtr::get_array_body_type(elem_type); Node* ld = make_load(control(), adr, elem, elem_type, adr_type, MemNode::unordered); --- 60,70 ---- Node* ary = pop(); // in case of exception //dec_sp(2); // Pop array and index const TypeAryPtr* arytype = _gvn.type(ary)->is_aryptr(); if (arytype->klass()->is_value_array_klass()) { ciValueArrayKlass* vak = arytype->klass()->as_value_array_klass(); ! ValueTypeNode* vt = ValueTypeNode::make_from_flattened(this, vak->element_klass()->as_value_klass(), ary, adr); push(vt); return; } const TypeAryPtr* adr_type = TypeAryPtr::get_array_body_type(elem_type); Node* ld = make_load(control(), adr, elem, elem_type, adr_type, MemNode::unordered);
< prev index next >