RFR: 8342156: C2: Compilation failure with fewer arguments after JDK-8329032 [v4]

Christian Hagedorn chagedorn at openjdk.org
Wed Oct 30 11:19:10 UTC 2024


On Wed, 30 Oct 2024 09:53:50 GMT, Daniel Lundén <dlunden at openjdk.org> wrote:

>> Adding C2 register allocation support for APX EGPRs ([JDK-8329032](https://bugs.openjdk.org/browse/JDK-8329032)) reduced, due to unfortunate rounding in the register mask size computation, the available space for incoming/outgoing method arguments in register masks.
>> 
>> ### Changeset
>> 
>> - Bump the number of 32-bit words dedicated to incoming/outgoing arguments in register masks from 3 to 4.
>> - Add a regression test.
>> 
>> ### Testing
>> 
>> - [GitHub Actions](https://github.com/dlunde/jdk/actions/runs/11436050131)
>> - `tier1` to `tier4` (and additional Oracle-internal testing) on Windows x64, Linux x64, Linux aarch64, macOS x64, and macOS aarch64.
>> - C2 compilation time benchmarking for DaCapo on Windows x64, Linux x64, Linux aarch64, macOS x64, and macOS aarch64. There is no observable difference in C2 compilation time.
>
> Daniel Lundén has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Update src/hotspot/share/adlc/formsopt.cpp
>   
>   Co-authored-by: Roberto Castañeda Lozano <robcasloz at users.noreply.github.com>

Looks good to me, too. Thanks for fixing it and adding me as contributor!

src/hotspot/share/adlc/formsopt.cpp line 178:

> 176:   // - Round up to the next doubleword size.
> 177:   // - Add one more word to accommodate a reasonable number of stack locations
> 178:   //   in the register mask regardless of how much slack is created by rounding

Suggestion:

  //   in the register mask regardless of how much slack is created by rounding.

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

Marked as reviewed by chagedorn (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/21612#pullrequestreview-2404485699
PR Review Comment: https://git.openjdk.org/jdk/pull/21612#discussion_r1822403745


More information about the hotspot-compiler-dev mailing list