[15] RFR(S): 8238765: PhaseCFG::schedule_pinned_nodes cannot handle precedence edges from unmatched CFG nodes correctly
Roland Westrelin
rwestrel at redhat.com
Wed Feb 12 09:03:24 UTC 2020
> http://cr.openjdk.java.net/~chagedorn/8238765/webrev.00/
You could maybe refactor the checks:
m->is_block_proj() || m->is_block_start() || ((m->is_Mach() && m->as_Mach()->ideal_Opcode() == Op_SafePoint))
||(m->is_Proj() && m->as_Proj()->bottom_type() == Type::CONTROL)
and similar ones and move them to an is_CFG() function?
Same for that code pattern:
136 Node* ctrl = node->in(0);
137 while (!ctrl->is_block_start()) {
138 if (ctrl == dom_node) {
139 return true;
140 }
141 ctrl = ctrl->in(0);
142 }
that's used twice.
Otherwise looks good to me.
Roland.
More information about the hotspot-compiler-dev
mailing list