RFR: 8351666: [PPC64] Make non-volatile VectorRegisters available for C2 register allocation [v4]

Martin Doerr mdoerr at openjdk.org
Wed Apr 23 13:22:55 UTC 2025


On Wed, 23 Apr 2025 12:12:54 GMT, Andrew Haley <aph at openjdk.org> wrote:

>> Good catch! I had forgotten to replace `Op_VecX`. I'm using `Op_RegF`, now.
>
> The comments in HotSpot make it clear that VMRegs are 4 bytes wide on all platforms, and stack slots are the size of VMRegs, and physical registers are modelled as some number of VMRegs. I never knew how PPC worked before.
> 
>> Hm, is it really necessary to model the vector registers as 4 32-bit parts?

Seems like pretending that only one 4 Byte slot was used even though a VSX register occupies 16 Bytes has worked for the register allocation. That may have strange implications because some code doesn't expect that.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/23987#discussion_r2056042524


More information about the hotspot-dev mailing list