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

Daniel Lundén dlunden at openjdk.org
Fri Sep 13 08:42:10 UTC 2024


On Fri, 13 Sep 2024 00:17:53 GMT, Dean Long <dlong at openjdk.org> wrote:

> This assumes the types in OptoRegPair won't change. Something more future-proof would be to try to construct an OptoRegPair with RM_SIZE_MAX >> 5, then try to read it back. We should probably have OptoRegPair check input values for overflow while we are at it.

Right, it's better to not hardcode it to `short`. I'll fix it.

> Does this mean "AllStack" no longer means infinite?

"AllStack" still works the same way as before; the growth cap is only for the actual representable bits in the register mask. When rolling over register masks in `PhaseChaitin::Select` (the main use of the all-stack flag), I have added a sanity bailout if `short` cannot index the rolled-over mask. I'll change that check to use `OptoRegPair` instead as well.

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

PR Comment: https://git.openjdk.org/jdk/pull/20404#issuecomment-2348374965


More information about the hotspot-compiler-dev mailing list