Skip to content
Permalink
Browse files

8237951: CTW: C2 compilation fails with "malformed control flow"

Reviewed-by: vlivanov, kvn
  • Loading branch information
rwestrel committed Jan 28, 2020
1 parent ef41763 commit f2b7509d5a1264083dee008de31df7221c725dbd
Showing with 5 additions and 2 deletions.
  1. +5 −2 src/hotspot/share/opto/phaseX.cpp
@@ -1762,8 +1762,11 @@ void PhaseCCP::analyze() {
if (m->is_Call()) {
for (DUIterator_Fast i2max, i2 = m->fast_outs(i2max); i2 < i2max; i2++) {
Node* p = m->fast_out(i2); // Propagate changes to uses
if (p->is_Proj() && p->as_Proj()->_con == TypeFunc::Control && p->outcnt() == 1) {
worklist.push(p->unique_out());
if (p->is_Proj() && p->as_Proj()->_con == TypeFunc::Control) {
Node* catch_node = p->find_out_with(Op_Catch);
if (catch_node != NULL) {
worklist.push(catch_node);
}
}
}
}

0 comments on commit f2b7509

Please sign in to comment.