7068051: SIGSEGV in PhaseIdealLoop::build_loop_late_post

Removed predicate cloning from loop peeling optimization and from split fall-in paths.

Reviewed-by: never
This commit is contained in:
Vladimir Kozlov 2011-07-29 09:16:29 -07:00
parent e30a679033
commit df8d608ac7
8 changed files with 33 additions and 138 deletions

View file

@ -255,7 +255,7 @@ ProjNode* PhaseIdealLoop::create_slow_version_of_loop(IdealLoopTree *loop,
_igvn._worklist.push(head);
// Slow (false) control
Node* ifslow_pred = move_loop_predicates(entry, ifslow, !counted_loop);
Node* ifslow_pred = clone_loop_predicates(entry, ifslow, !counted_loop);
LoopNode* slow_head = old_new[head->_idx]->as_Loop();
_igvn.hash_delete(slow_head);
slow_head->set_req(LoopNode::EntryControl, ifslow_pred);