On Fri, 10 Jul 2026 21:30:25 GMT, Dean Long <[email protected]> wrote:

>> David Simms has updated the pull request incrementally with 11 additional 
>> commits since the last revision:
>> 
>>  - Merge branch '8317277' into jep401_sub_review_8317278
>>  - Merge remote-tracking branch 'valhalla/lworld' into 8317277
>>  - 8387703: [lworld] address batch of comments in mainline PR
>>    
>>    Co-authored-by: Tobias Hartmann <[email protected]>
>>    Reviewed-by: thartmann, dlong
>>  - 8387661: [lworld] move generate_return_value_stub() to SharedRuntime
>>    
>>    Reviewed-by: adinn, thartmann
>>  - 8387405: [lworld] is_always_flat_in_array should be always false
>>    
>>    Reviewed-by: thartmann
>>  - 8387686: [lworld] Update the JNI specification version for value types
>>    
>>    Reviewed-by: alanb, dsimms
>>  - 8387726: [lworld] JVMTI/JDWP/JDI docs cleanup
>>    
>>    Reviewed-by: sspitsyn, cjplummer
>>  - 8387673: [lworld] C2: clone() intrinsic does not throw 
>> CloneNotSupportedException for value classes not implementing Cloneable
>>    
>>    Reviewed-by: thartmann
>>  - 8387709: [lworld] Split Valhalla tests from tier1_compiler_3 to avoid 
>> task timeouts
>>    
>>    Reviewed-by: chagedorn
>>  - 8387350: [lworld] ObjectOutputStream.writeObject() doesn't throw 
>> InvalidClassException for Serializable instance with strict init fields
>>    
>>    Reviewed-by: alanb, jpai, thartmann
>>  - ... and 1 more: https://git.openjdk.org/jdk/compare/f1f6d35d...1b6f7c18
>
> src/hotspot/share/code/vtableStubs.cpp line 255:
> 
>> 253:   // Assumption: receiver_location < 4 in most cases.
>> 254:   int hash = ((vtable_index << 2) ^ 
>> VtableStub::receiver_location()->value()) + vtable_index;
>> 255:   if (caller_is_c1) {
> 
> This could use a comment.

Agreed. I'm not entirely sure why exactly we do `7 - hash` but I guess it's 
just an easy way to get two different hashes since we have two different vtable 
stubs for C1 and C2:
https://github.com/openjdk/valhalla/blob/0b66ce5e7725fc4c120532694a764c8195f91361/src/hotspot/cpu/x86/vtableStubs_x86_64.cpp#L64

I'll add a comment with 
[JDK-8388007](https://bugs.openjdk.org/browse/JDK-8388007).

> src/hotspot/share/compiler/methodMatcher.cpp line 307:
> 
>> 305:       if (!vmSymbols::object_initializer_name()->equals(method_name) &&
>> 306:           !vmSymbols::class_initializer_name()->equals(method_name)) {
>> 307:         error_msg = "Chars '<' and '>' only allowed in <init>, 
>> <clinit>";
> 
> Consider reverting to JDK mainline.

Addressing with [JDK-8388007](https://bugs.openjdk.org/browse/JDK-8388007).

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

PR Review Comment: https://git.openjdk.org/jdk/pull/31122#discussion_r3570239525
PR Review Comment: https://git.openjdk.org/jdk/pull/31122#discussion_r3570239815

Reply via email to