8053915: bigapps assert failure in C2: modified node is not on IGVN._worklist
Summary: Add modified node to the IGVN worklist in 'PhaseIdealLoop::do_range_check'.
Reviewed-by: kvn, roland
--- a/hotspot/src/share/vm/opto/loopTransform.cpp Tue Aug 05 08:25:10 2014 +0200
+++ b/hotspot/src/share/vm/opto/loopTransform.cpp Thu Jul 31 08:39:47 2014 +0200
@@ -2019,10 +2019,9 @@
Node *main_bol = main_cle->in(1);
// Hacking loop bounds; need private copies of exit test
if( main_bol->outcnt() > 1 ) {// BoolNode shared?
- _igvn.hash_delete(main_cle);
main_bol = main_bol->clone();// Clone a private BoolNode
register_new_node( main_bol, main_cle->in(0) );
- main_cle->set_req(1,main_bol);
+ _igvn.replace_input_of(main_cle, 1, main_bol);
}
Node *main_cmp = main_bol->in(1);
if( main_cmp->outcnt() > 1 ) { // CmpNode shared?