RFR: 8365570: C2 fails assert(false) failed: Unexpected node in SuperWord truncation: CastII [v2]

Emanuel Peter epeter at openjdk.org
Fri Aug 22 08:03:51 UTC 2025


On Fri, 22 Aug 2025 06:31:08 GMT, Quan Anh Mai <qamai at openjdk.org> wrote:

>> I think this is fair, I've pushed a commit that changes the comment wording. Let me know what you think!
>
> We have `CastVV` which should be the packed version of `CastII`. The thing that is I think the most difficult is to properly wire it. In the simplest situation of all elements in the pack having the same control input can be easily handled, though.

Right. I don't think there is currently any case where `CastII` would actually be useful to pack in superword. They usually originate from some control-flow. For example a comparison on a variable `if (x < 5)` and then we can `CastII` the variable `x` on the branches. But that only becomes relevant with if-conversion.

Or do you see a case that could happen without if-conversion where `CastII` needs to be handled?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/26827#discussion_r2293020838


More information about the hotspot-compiler-dev mailing list