[15] RFR(S): 8238765: PhaseCFG::schedule_pinned_nodes cannot handle precedence edges from unmatched CFG nodes correctly
Christian Hagedorn
christian.hagedorn at oracle.com
Wed Feb 12 11:55:03 UTC 2020
Hi Roland
Thank you for your review!
Yes, that makes the code cleaner. I've done a refactoring in a new webrev:
http://cr.openjdk.java.net/~chagedorn/8238765/webrev.01/
Best regards,
Christian
On 12.02.20 10:03, Roland Westrelin wrote:
>
>> 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