RFR: 8325467: Support methods with many arguments in C2 [v27]

Daniel Lundén dlunden at openjdk.org
Tue Sep 16 12:11:51 UTC 2025


On Tue, 16 Sep 2025 10:29:58 GMT, Emanuel Peter <epeter at openjdk.org> wrote:

>> Daniel Lundén has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 39 commits:
>> 
>>  - Clarify comments in regmask.hpp
>>  - Merge remote-tracking branch 'upstream/master' into many-arguments-8325467+pr-updates
>>  - Address review comments (renaming on the way in a separate PR)
>>  - Update src/hotspot/share/opto/regmask.hpp
>>    
>>    Co-authored-by: Emanuel Peter <emanuel.peter at oracle.com>
>>  - Restore modified java/lang/invoke tests
>>  - Sort includes (new requirement)
>>  - Merge remote-tracking branch 'upstream/master' into many-arguments-8325467+pr-updates
>>  - Add clarifying comments at definitions of register mask sizes
>>  - Fix implicit zero and nullptr checks
>>  - Add deep copy comment
>>  - ... and 29 more: https://git.openjdk.org/jdk/compare/60930a3e...c1f41288
>
> src/hotspot/share/opto/postaloc.cpp line 685:
> 
>> 683:               assert(is_adjacent || is_reg,
>> 684:                      "only registers can be non-adjacent");
>> 685:               if (!value[ureg_lo] && is_adjacent) { // Nearly always adjacent
> 
> `value[ureg_lo]` returns a `Node*`, right? Then that would make this an implicit null check, not allowed by style guide ;)

Here I'll argue not touching this in this PR (I did not introduce this), as this is the style of the surrounding code. Should be addressed in a follow-up PR though.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/20404#discussion_r2352261538


More information about the hotspot-compiler-dev mailing list