On Thu, 25 Jun 2026 20:58:25 GMT, Dean Long <[email protected]> wrote:

>> David Simms has updated the pull request with a new target base due to a 
>> merge or a rebase. The pull request now contains 2847 commits:
>> 
>>  - Merge branch '8317277' into jep401_sub_review_8317278
>>  - Merge remote-tracking branch 'valhalla/lworld' into 8317277
>>  - 8387024: [lworld] Remove the mention of mutexes from the specification 
>> text of value classes
>>    
>>    Reviewed-by: alanb, dholmes, liach
>>  - 8387054: [lworld] BACKOUT JDK-8375694 C2: Dead loop constructed with 
>> CastPP in late inlining
>>    
>>    Reviewed-by: dholmes
>>  - 8386904: [lworld] ProblemList tests that fail due to JDK-8375645 on all 
>> platforms
>>    8387050: [lworld] ProblemList two 
>> compiler/valhalla/inlinetypes/TestValueClasses.java sub-tests in Xcomp mode
>>    
>>    Reviewed-by: dholmes
>>  - 8386638: [lworld] Port JEP 401 to PPC64
>>    
>>    Co-authored-by: Richard Reingruber <[email protected]>
>>    Reviewed-by: dbriemann, rrich, lfoltan
>>  - Merge
>>    
>>    Merge jdk-28+3
>>  - 8386815: [lworld] Reduce the number of constructors in IdentityException
>>    
>>    Reviewed-by: liach, alanb
>>  - 8386626: [lworld] Only enable valhalla IR tests in 
>> ScalarReplacementWithGCBarrierTests.java for aarch64 and x86
>>    
>>    Reviewed-by: mhaessig, mchevalier
>>  - 8386718: [lworld] C2: Integer overflow in arraycopy scaling for flat 
>> arrays
>>    
>>    Reviewed-by: qamai
>>  - ... and 2837 more: https://git.openjdk.org/jdk/compare/915efc50...5bc36893
>
> src/hotspot/share/adlc/formssel.cpp line 850:
> 
>> 848:       strcmp(_matrule->_opType,"SafePoint" )==0 ||
>> 849:       strcmp(_matrule->_opType,"Halt"      )==0 ||
>> 850:       strcmp(_matrule->_opType,"CallLeafNoFP")==0)
> 
> CallLeafNoFP has its own match_edge() override, so this change looks like an 
> optimization.  Shouldn't we add other missing Call nodes here too, to make 
> the optimization complete?

That change comes from:
https://mail.openjdk.org/archives/list/[email protected]/thread/CNM2Y3TPOGJCTOGKZOW3QQWVT2GAYOHQ/

(thanks @TobiHartmann for digging that out)

This part:


> C2 doesn't support calling to an address that is loaded in a register. I
hacked support for it from the existing CallLeafNoFP node. It's somewhat
ugly but I would say it's good enough for now.

(still good enough 10 years later, it seems)

Removing it causes some c2 crashes.
Let me add a comment.

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

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

Reply via email to