< prev index next >
src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp
Print this page
*** 1358,1368 ****
uint idx = stack.index();
Node* n_clone = clones.at(clones.size()-1);
if (idx < n->outcnt()) {
Node* u = n->raw_out(idx);
Node* c = phase->ctrl_or_self(u);
! if (phase->is_dominator(call, c) && phase->is_dominator(c, projs.fallthrough_proj)) {
stack.set_index(idx+1);
assert(!u->is_CFG(), "");
stack.push(u, 0);
Node* u_clone = u->clone();
int nb = u_clone->replace_edge(n, n_clone);
--- 1358,1368 ----
uint idx = stack.index();
Node* n_clone = clones.at(clones.size()-1);
if (idx < n->outcnt()) {
Node* u = n->raw_out(idx);
Node* c = phase->ctrl_or_self(u);
! if (phase->is_dominator(call, c) && phase->is_dominator(c, projs->fallthrough_proj)) {
stack.set_index(idx+1);
assert(!u->is_CFG(), "");
stack.push(u, 0);
Node* u_clone = u->clone();
int nb = u_clone->replace_edge(n, n_clone);
< prev index next >