< prev index next >

src/hotspot/cpu/x86/x86_64.ad

Print this page
@@ -12249,18 +12249,18 @@
                   $scr$$Register, noreg, noreg, r15_thread, nullptr, nullptr, nullptr, false, false);
    %}
    ins_pipe(pipe_slow);
  %}
  
- instruct cmpFastUnlock(rFlagsReg cr, rRegP object, rax_RegP box, rRegP tmp) %{
+ instruct cmpFastUnlock(rFlagsReg cr, rRegP object, rax_RegP box, rRegP tmp, rRegP scr) %{
    predicate(LockingMode != LM_LIGHTWEIGHT);
    match(Set cr (FastUnlock object box));
-   effect(TEMP tmp, USE_KILL box);
+   effect(TEMP tmp, TEMP scr, USE_KILL box);
    ins_cost(300);
    format %{ "fastunlock $object,$box\t! kills $box,$tmp" %}
    ins_encode %{
-     __ fast_unlock($object$$Register, $box$$Register, $tmp$$Register, ra_->C->use_rtm());
+     __ fast_unlock($object$$Register, $box$$Register, $tmp$$Register, $scr$$Register, ra_->C->use_rtm());
    %}
    ins_pipe(pipe_slow);
  %}
  
  instruct cmpFastLockLightweight(rFlagsReg cr, rRegP object, rbx_RegP box, rax_RegI rax_reg, rRegP tmp) %{

@@ -12273,18 +12273,18 @@
      __ fast_lock_lightweight($object$$Register, $box$$Register, $rax_reg$$Register, $tmp$$Register, r15_thread);
    %}
    ins_pipe(pipe_slow);
  %}
  
- instruct cmpFastUnlockLightweight(rFlagsReg cr, rRegP object, rax_RegP rax_reg, rRegP tmp) %{
+ instruct cmpFastUnlockLightweight(rFlagsReg cr, rRegP object, rax_RegP rax_reg, rRegP tmp, rRegP scr) %{
    predicate(LockingMode == LM_LIGHTWEIGHT);
    match(Set cr (FastUnlock object rax_reg));
-   effect(TEMP tmp, USE_KILL rax_reg);
+   effect(TEMP tmp, TEMP scr, USE_KILL rax_reg);
    ins_cost(300);
    format %{ "fastunlock $object,$rax_reg\t! kills $rax_reg,$tmp" %}
    ins_encode %{
-     __ fast_unlock_lightweight($object$$Register, $rax_reg$$Register, $tmp$$Register, r15_thread);
+     __ fast_unlock_lightweight($object$$Register, $rax_reg$$Register, $tmp$$Register, $scr$$Register, r15_thread);
    %}
    ins_pipe(pipe_slow);
  %}
  
  
< prev index next >