RFR: 8360775: Fix Shenandoah GC test failures when APX is enabled [v2]
Jatin Bhateja
jbhateja at openjdk.org
Tue Jul 1 06:06:40 UTC 2025
On Mon, 30 Jun 2025 22:19:18 GMT, Srinivas Vamsi Parasa <sparasa at openjdk.org> wrote:
>> This PR fixes the test failures seen in many JTreg tests related to Shenandoah GC (`test/hotspot/jtreg/gc/shenandoah/`) with UseAPX. The issues were root caused to:
>>
>> 1. Higher band registers are not saved and restored in Shenandoah load_reference_barrier.
>> 2. Pusha/Popa implementation using push2p/pop2p does not restore the contents of rax.
>>
>> Both the issues are fixed in this PR.
>
> Srinivas Vamsi Parasa has updated the pull request incrementally with one additional commit since the last revision:
>
> restore the orginal contents of rax
src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.cpp line 387:
> 385: __ movptr(Address(rsp, (--slot) * wordSize), r29);
> 386: __ movptr(Address(rsp, (--slot) * wordSize), r30);
> 387: __ movptr(Address(rsp, (--slot) * wordSize), r31);
I think you should use pushp2 / pop2p for these instructions also , maybe it can be handled along with
https://github.com/openjdk/jdk/pull/25889
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/26009#discussion_r2176501724
More information about the hotspot-dev
mailing list