[11] RFR(M): 8203915: Induction variable of over-unrolled loop conflicts with range checks
Tobias Hartmann
tobias.hartmann at oracle.com
Tue Jun 12 12:52:31 UTC 2018
Hi Roland,
On 12.06.2018 14:28, Roland Westrelin wrote:
> What Opaque1 nodes do you leave in?
I should have added that I'm not copying the skeleton predicate from the pre-loop because the
pre-loop might not longer exist when we perform unrolling of the main loop. Instead, I'm copying a
skeleton predicate which still has the Opaque1Node once to before the main loop that is then updated
during loop unrolling according to the new stride.
When updating the init+stride predicate during loop unrolling, I leave the Opaque1Node that guards
this expression in because otherwise the constant expression might be folded and we cannot update it
during the next iteration of unrolling.
Thanks,
Tobias
More information about the hotspot-compiler-dev
mailing list