On Mon, 3 Aug 2026 12:54:24 GMT, Tobias Hartmann <[email protected]> wrote:
>> Marc Chevalier has updated the pull request incrementally with two
>> additional commits since the last revision:
>>
>> - Woopsies
>> - Start of review
>
> src/hotspot/share/opto/library_call.cpp line 5682:
>
>> 5680:
>> 5681: // Case 2. one segment, less than 8-byte long
>> 5682: Node* result_int = AddI(MulI(intcon(31), result_empty),
>> ConvL2I(obj_extracted));
>
> I'm not convinced that this is correct for signed `byte` and `short`. Isn't
> `ConvL2I` omitting the sign bit?
Yes, something is off, but I can't make it fail. Not sure why not.
> test/hotspot/jtreg/compiler/valhalla/inlinetypes/TestHashcodeFastPath.java
> line 471:
>
>> 469: int SIZE = 100;
>> 470: for (int i = 0; i < SIZE; ++i) {
>> 471: Asserts.assertEQ(h_byte(new Byte((byte)i)), h(new
>> Byte((byte)i)));
>
> Negative values are missing here.
Added, but I now get a test failure (line 484) during warmup. PrintCompilation
confirms nothing relevant is compiled yet... I'll look at that, but it's very
puzzling.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/32144#discussion_r3706631485
PR Review Comment: https://git.openjdk.org/jdk/pull/32144#discussion_r3706626867