< prev index next >

src/hotspot/share/opto/loopnode.cpp

Print this page

        

*** 1258,1267 **** --- 1258,1271 ---- // construct required phi nodes for outer loop. CountedLoopNode* inner_cl = unique_ctrl_out()->as_CountedLoop(); assert(inner_cl->is_strip_mined(), "inner loop should be strip mined"); Node* inner_iv_phi = inner_cl->phi(); if (inner_iv_phi == NULL) { + IfNode* outer_le = outer_loop_end(); + Node* iff = igvn->transform(new IfNode(outer_le->in(0), outer_le->in(1), outer_le->_prob, outer_le->_fcnt)); + igvn->replace_node(outer_le, iff); + inner_cl->clear_strip_mined(); return; } CountedLoopEndNode* inner_cle = inner_cl->loopexit(); int stride = inner_cl->stride_con();
< prev index next >