RFR: 8253644: C2: assert(skeleton_predicate_has_opaque(iff)) failed: unexpected

Roland Westrelin roland at openjdk.java.net
Thu Nov 26 12:38:58 UTC 2020


On Thu, 26 Nov 2020 11:13:09 GMT, Christian Hagedorn <chagedorn at openjdk.org> wrote:

> Some additional optimizations are then applied such that the fast loop no longer has any backedge/path to the parent loop while the slow loop still has.

Does one round of loop opts stop here...
and another starts below?

>  As a result, the loop tree building algorithm only recognizes the slow loop as child while the fast loop is not. The fast loop is treated as a separate loop on the same level as the parent loop:

>     [N459, but the loop could actually be removed in the meantime but the skeleton predicates are still there]

I don't understand that part. Is N459 no longer a loop?

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

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


More information about the hotspot-compiler-dev mailing list