8215757: C2: PhaseIdealLoop::create_new_if_for_predicate() computes wrong IDOM
authorvlivanov
Tue, 15 Jan 2019 16:41:17 -0800
changeset 53357 c52a37f40324
parent 53356 7c68a23014db
child 53358 659b004b6a1b
8215757: C2: PhaseIdealLoop::create_new_if_for_predicate() computes wrong IDOM Reviewed-by: kvn, roland
src/hotspot/share/opto/loopPredicate.cpp
--- a/src/hotspot/share/opto/loopPredicate.cpp	Fri Jan 11 14:27:22 2019 +0100
+++ b/src/hotspot/share/opto/loopPredicate.cpp	Tue Jan 15 16:41:17 2019 -0800
@@ -160,7 +160,7 @@
   // When called from beautify_loops() idom is not constructed yet.
   if (_idom != NULL) {
     Node* ridom = idom(rgn);
-    Node* nrdom = dom_lca(ridom, new_iff);
+    Node* nrdom = dom_lca_internal(ridom, new_iff);
     set_idom(rgn, nrdom, dom_depth(rgn));
   }