RFR: 8325467: Support methods with many arguments in C2 [v24]
Daniel Lundén
dlunden at openjdk.org
Mon Sep 1 16:11:49 UTC 2025
On Mon, 1 Sep 2025 08:05:04 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 44:
>
>> 42: // statements in Java.
>> 43: const int BoxLockNode_SLOT_LIMIT = 200;
>> 44:
>
> Even before this constant, it would be nice to have an introductory comment, that lays out what the regmask is for, and what its basic design is.
Yes, you are right. I'll add it!
> src/hotspot/share/opto/regmask.hpp line 122:
>
>> 120:
>> 121: // Viewed as an array of machine words
>> 122: uintptr_t _RM_UP[_RM_SIZE];
>
> Do you know what `UP` stands for? Could we rename it maybe?
> Would be nice if we could have the same "units" for these arrays than for the sizes above.
I would guess it stands for **u**int**p**tr, and the `I` in `_RM_I` is for **i**nteger. Maybe `_RM_INT` and `_RM_WORD`?
> src/hotspot/share/opto/regmask.hpp line 128:
>
>> 126: // extend the register mask with dynamically allocated memory. We keep the
>> 127: // base statically allocated _RM_UP, and arena allocate the extended mask
>> 128: // (RM_UP_EXT) separately. Another, perhaps more elegant, option would be to
>
> Suggestion:
>
> // (_RM_UP_EXT) separately. Another, perhaps more elegant, option would be to
>
> Underscore for consistency? Or does it reference something else?
Yes, thanks (typo).
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/20404#discussion_r2314295280
PR Review Comment: https://git.openjdk.org/jdk/pull/20404#discussion_r2314290338
PR Review Comment: https://git.openjdk.org/jdk/pull/20404#discussion_r2314292191
More information about the hotspot-compiler-dev
mailing list