RFR(S): 8220374: C2: LoopStripMining doesn't strip as expected

Roman Kennke rkennke at redhat.com
Wed Mar 13 09:56:25 UTC 2019


Hi Roland,

> http://cr.openjdk.java.net/~roland/8220374/webrev.00/
> 
> Fix for 8193597 accidentally broke loop strip mining: that change caused
> the inner and outer loop to have the same exit condition. So loop strip
> mining has been effectively disabled for more than a year (a month after
> it was pushed !?).

Wow! WTF!?

> The fix above correctly sets the inner and outer loop exit
> condition. Initially, when the loop is strip mined, the inner loop exit
> condition is left as is and the outer loop exit condition is set to
> always exit. After optimizations, the outer loop exit condition must be
> set to be the same as the inner loop exit condition and then, the inner
> loop exit condition must be adjusted so the inner loop runs for no more
> than LoopStripMiningIter iterations.
> 
> Thanks to Martin Doerr for the test case and the bug report.

Looks good to me! Thanks!

Roman


More information about the hotspot-compiler-dev mailing list