RFR: 8331575: C2: crash when ConvL2I is split thru phi at LongCountedLoop [v2]

Roland Westrelin roland at openjdk.org
Mon May 13 13:27:08 UTC 2024


On Tue, 7 May 2024 17:05:45 GMT, Emanuel Peter <epeter at openjdk.org> wrote:

> I guess the issue is that ConvL2I and ConvI2L are also type nodes, which can restrict their type, just like CastII nodes. And that restricting of the type is only true under a certain if-branch.

That's not entirely true here. The `ConvL2I` captures the type of its input so not a narrower type. The problem is that the type is that of a `Phi` for a counted loop and once pushed through phi, the type captured by the `ConvI2L` becomes incorrect.

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

PR Comment: https://git.openjdk.org/jdk/pull/19086#issuecomment-2107569510


More information about the hotspot-compiler-dev mailing list