< prev index next >

src/hotspot/cpu/riscv/gc/shenandoah/shenandoahBarrierSetAssembler_riscv.cpp

Print this page
@@ -62,11 +62,11 @@
        __ lbu(t0, gc_state);
        if (ShenandoahSATBBarrier && dest_uninitialized) {
          __ andi(t0, t0, ShenandoahHeap::HAS_FORWARDED);
          __ beqz(t0, done);
        } else {
-         __ andi(t0, t0, ShenandoahHeap::HAS_FORWARDED | ShenandoahHeap::MARKING);
+         __ andi(t0, t0, ShenandoahHeap::HAS_FORWARDED | ShenandoahHeap::YOUNG_MARKING | ShenandoahHeap::OLD_MARKING);
          __ beqz(t0, done);
        }
  
        __ push_reg(saved_regs, sp);
        if (UseCompressedOops) {

@@ -640,11 +640,11 @@
    Label runtime;
  
    // Is marking still active?
    Address gc_state(thread, in_bytes(ShenandoahThreadLocalData::gc_state_offset()));
    __ lb(tmp, gc_state);
-   __ andi(tmp, tmp, ShenandoahHeap::MARKING);
+   __ andi(tmp, tmp, ShenandoahHeap::YOUNG_MARKING | ShenandoahHeap::OLD_MARKING);
    __ beqz(tmp, done);
  
    // Can we store original value in the thread's buffer?
    __ ld(tmp, queue_index);
    __ beqz(tmp, runtime);
< prev index next >