RFR: 8325467: Support methods with many arguments in C2 [v24]
Daniel Lundén
dlunden at openjdk.org
Mon Sep 1 16:35:00 UTC 2025
On Mon, 1 Sep 2025 08:30:19 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 35 commits:
>>
>> - 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
>> - Merge remote-tracking branch 'upstream/master' into many-arguments-8325467+pr-updates
>> - Fix typo
>> - Updates after Emanuel's comments
>> - Refactor and improve TestNestedSynchronize.java
>> - ... and 25 more: https://git.openjdk.org/jdk/compare/b39c7369...80c6cf47
>
> src/hotspot/share/opto/regmask.hpp line 170:
>
>> 168: // variable indicates how many words we offset with. We consider all
>> 169: // registers before the offset to not be included in the register mask.
>> 170: unsigned int _offset;
>
> Does that mean we make different slices of the mask?
I don't quite understand the question, can you please elaborate? The `_offset` means we shift the register mask to the right, so that the first bit of the first `_RM_UP` element no longer represents `OptoReg` 0 (but rather `OptoReg` `_offset * BitsPerWord`).
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/20404#discussion_r2314325238
More information about the hotspot-compiler-dev
mailing list