RFR: 8254998: C2: assert(!n->as_Loop()->is_transformed_long_loop()) failure with -XX:StressLongCountedLoop=1

Vladimir Ivanov vlivanov at openjdk.java.net
Mon Oct 19 17:29:16 UTC 2020


On Mon, 19 Oct 2020 12:07:46 GMT, Roland Westrelin <roland at openjdk.org> wrote:

> Transformation of a long counted loop into a loop nest with a counted
> loop inner loop happens in 2 passes of loop opts: first the loop nest
> is created and then the inner loop is transformed into a counted
> loop. The assert fires because the second step doesn't have a chance
> to run given the first step was executed as the last loop opts pass
> before running out of allowed loop opts passes. The fix I propose for
> this corner case is to relax the assert to account for this.

Looks good.

-------------

Marked as reviewed by vlivanov (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/735


More information about the hotspot-compiler-dev mailing list