RFR: 8371674: C2 fails with Missed optimization opportunity in PhaseIterGVN for MoveL2D [v2]

Benoît Maillard bmaillard at openjdk.org
Wed Nov 19 08:31:08 UTC 2025


On Fri, 14 Nov 2025 16:08:30 GMT, Emanuel Peter <epeter at openjdk.org> wrote:

>> Benoît Maillard has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Rename test and add comment
>
> test/hotspot/jtreg/compiler/c2/TestMissingOptMoveX2YLoadX.java line 54:
> 
>> 52:         while (++e < 37) {
>> 53:             for (f = 1; f < 7; f++) {
>> 54:                 h >>>= (int)(--g - Double.longBitsToDouble(j[e]));
> 
> Drive-by comment, might review more fully next week: could the same happen with `MoveI2F`? Or with `MoveD2L`, i.e. `Double.doubleRawBitsToLong`? Probably yes. Not sure if it's worth duplicating the test, up to you.

Theoretically yes, but as mentioned in the description I could only reproduce it with `Double.longBitsToDouble`. I added a comment in the test to make it clear there as well.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/28290#discussion_r2541015656


More information about the hotspot-compiler-dev mailing list