On Tue, 11 Aug 2026 10:20:46 GMT, Harshit Dhiman <[email protected]> wrote:
>> Port the Z garbage collector to s390. >> >> The tier1 test case are passing using `-XX:+UseZGC` flag >> >> --------- >> - [x] I confirm that I make this contribution in accordance with the >> [OpenJDK Interim AI Policy](https://openjdk.org/legal/ai). > > Harshit Dhiman has updated the pull request incrementally with one additional > commit since the last revision: > > don;t set cc src/hotspot/cpu/s390/gc/z/zBarrierSetAssembler_s390.cpp line 683: > 681: __ z_lgr(Z_R0_scratch, ref->as_register()); > 682: __ relocate(barrier_Relocation::spec(), > ZBarrierRelocationFormatMarkBadBeforeTest); > 683: __ z_nill(Z_R0_scratch, barrier_Relocation::unpatched); here also, try to switch to tmll. src/hotspot/cpu/s390/gc/z/z_s390.ad line 37: > 35: #include "gc/z/zBarrierSetAssembler.hpp" > 36: > 37: static void z_color(MacroAssembler* masm, const MachNode* node, Register > dst, Register src) { Can we go with the same implementation approach as it is done in ZBarrierSetAssembler::store_barrier_fast ? `z_rosbg` is expensive. if (rnew_zaddress != noreg) { // noreg means null, no need to color __ z_sllg(rnew_zpointer, rnew_zaddress, ZPointerLoadShift); __ relocate(barrier_Relocation::spec(), ZBarrierRelocationFormatStoreGoodBeforeLoad); __ z_oill(rnew_zpointer, barrier_Relocation::unpatched); } else { __ relocate(barrier_Relocation::spec(), ZBarrierRelocationFormatStoreGoodBeforeLoad); __ z_llill(rnew_zpointer, barrier_Relocation::unpatched); } ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/31984#discussion_r3841828985 PR Review Comment: https://git.openjdk.org/jdk/pull/31984#discussion_r3841844023
