< prev index next >

src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.cpp

Print this page
@@ -589,11 +589,11 @@
      restore_machine_state(masm, /* handle_gpr = */ true, /* handle_fp = */ true);
    }
  }
  
  void ShenandoahBarrierSetAssembler::store_at(MacroAssembler* masm, DecoratorSet decorators, BasicType type,
-               Address dst, Register val, Register tmp1, Register tmp2) {
+               Address dst, Register val, Register tmp1, Register tmp2, Register tmp3) {
  
    bool on_oop = is_reference_type(type);
    bool in_heap = (decorators & IN_HEAP) != 0;
    bool as_normal = (decorators & AS_NORMAL) != 0;
    if (on_oop && in_heap) {

@@ -627,18 +627,18 @@
                                     tmp3  /* tmp */,
                                     val != noreg /* tosca_live */,
                                     false /* expand_call */);
      }
      if (val == noreg) {
-       BarrierSetAssembler::store_at(masm, decorators, type, Address(tmp1, 0), val, noreg, noreg);
+       BarrierSetAssembler::store_at(masm, decorators, type, Address(tmp1, 0), val, noreg, noreg, noreg);
      } else {
        iu_barrier(masm, val, tmp3);
-       BarrierSetAssembler::store_at(masm, decorators, type, Address(tmp1, 0), val, noreg, noreg);
+       BarrierSetAssembler::store_at(masm, decorators, type, Address(tmp1, 0), val, noreg, noreg, noreg);
      }
      NOT_LP64(imasm->restore_bcp());
    } else {
-     BarrierSetAssembler::store_at(masm, decorators, type, dst, val, tmp1, tmp2);
+     BarrierSetAssembler::store_at(masm, decorators, type, dst, val, tmp1, tmp2, tmp3);
    }
  }
  
  void ShenandoahBarrierSetAssembler::try_resolve_jobject_in_native(MacroAssembler* masm, Register jni_env,
                                                                    Register obj, Register tmp, Label& slowpath) {
< prev index next >