RFR: 8331418: ZGC: generalize barrier liveness logic [v2]

Martin Doerr mdoerr at openjdk.org
Thu May 2 09:42:55 UTC 2024


On Thu, 2 May 2024 07:54:16 GMT, Roberto Castañeda Lozano <rcastanedalo at openjdk.org> wrote:

>> src/hotspot/share/gc/shared/c2/barrierSetC2.cpp line 127:
>> 
>>> 125:   while (OptoReg::is_reg(reg)) {
>>> 126:     const VMReg vm_reg = OptoReg::as_VMReg(reg);
>>> 127:     if (!(vm_reg->is_Register()) || vm_reg->as_Register() != r) {
>> 
>> This doesn't work on PPC64: We run into "assert(is_Register() && is_even(value())) failed: even-aligned GPR name" (vmreg_ppc.hpp:54). Calling `as_Register()` is only supported for the even ones.
>> Maybe add check `is_concrete()`?
>
> Done (commit https://github.com/openjdk/jdk/pull/19026/commits/c0fc66deb654a9b930a7b7cf1a7e7fa093739027). @TheRealMDoerr please let me know if this works on PPC64.

Yes, this works on PPC64. Thanks!

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

PR Review Comment: https://git.openjdk.org/jdk/pull/19026#discussion_r1587348967


More information about the hotspot-gc-dev mailing list