< prev index next >

src/hotspot/cpu/riscv/riscv.ad

Print this page
@@ -10539,21 +10539,23 @@
    ins_pipe(pipe_class_empty);
  %}
  
  // inlined locking and unlocking
  // using t1 as the 'flag' register to bridge the BoolNode producers and consumers
- instruct cmpFastLock(rFlagsReg cr, iRegP object, iRegP box, iRegPNoSp tmp1, iRegPNoSp tmp2, iRegPNoSp tmp3)
+ instruct cmpFastLock(rFlagsReg cr, iRegP object, iRegP box,
+                      iRegPNoSp tmp1, iRegPNoSp tmp2, iRegPNoSp tmp3, iRegPNoSp tmp4)
  %{
    predicate(LockingMode != LM_LIGHTWEIGHT);
    match(Set cr (FastLock object box));
-   effect(TEMP tmp1, TEMP tmp2, TEMP tmp3);
+   effect(TEMP tmp1, TEMP tmp2, TEMP tmp3, TEMP tmp4);
  
    ins_cost(10 * DEFAULT_COST);
-   format %{ "fastlock $object,$box\t! kills $tmp1,$tmp2,$tmp3, #@cmpFastLock" %}
+   format %{ "fastlock $object,$box\t! kills $tmp1,$tmp2,$tmp3,$tmp4 #@cmpFastLock" %}
  
    ins_encode %{
-     __ fast_lock($object$$Register, $box$$Register, $tmp1$$Register, $tmp2$$Register, $tmp3$$Register);
+     __ fast_lock($object$$Register, $box$$Register,
+                  $tmp1$$Register, $tmp2$$Register, $tmp3$$Register, $tmp4$$Register);
    %}
  
    ins_pipe(pipe_serial);
  %}
  

@@ -10572,37 +10574,41 @@
    %}
  
    ins_pipe(pipe_serial);
  %}
  
- instruct cmpFastLockLightweight(rFlagsReg cr, iRegP object, iRegP box, iRegPNoSp tmp1, iRegPNoSp tmp2, iRegPNoSp tmp3)
+ instruct cmpFastLockLightweight(rFlagsReg cr, iRegP object, iRegP box,
+                                 iRegPNoSp tmp1, iRegPNoSp tmp2, iRegPNoSp tmp3, iRegPNoSp tmp4)
  %{
    predicate(LockingMode == LM_LIGHTWEIGHT);
    match(Set cr (FastLock object box));
-   effect(TEMP tmp1, TEMP tmp2, TEMP tmp3);
+   effect(TEMP tmp1, TEMP tmp2, TEMP tmp3, TEMP tmp4);
  
    ins_cost(10 * DEFAULT_COST);
-   format %{ "fastlock $object,$box\t! kills $tmp1,$tmp2,$tmp3 #@cmpFastLockLightweight" %}
+   format %{ "fastlock $object,$box\t! kills $tmp1,$tmp2,$tmp3,$tmp4 #@cmpFastLockLightweight" %}
  
    ins_encode %{
-     __ fast_lock_lightweight($object$$Register, $box$$Register, $tmp1$$Register, $tmp2$$Register, $tmp3$$Register);
+     __ fast_lock_lightweight($object$$Register, $box$$Register,
+                              $tmp1$$Register, $tmp2$$Register, $tmp3$$Register, $tmp4$$Register);
    %}
  
    ins_pipe(pipe_serial);
  %}
  
- instruct cmpFastUnlockLightweight(rFlagsReg cr, iRegP object, iRegP box, iRegPNoSp tmp1, iRegPNoSp tmp2, iRegPNoSp tmp3)
+ instruct cmpFastUnlockLightweight(rFlagsReg cr, iRegP object, iRegP box,
+                                   iRegPNoSp tmp1, iRegPNoSp tmp2, iRegPNoSp tmp3)
  %{
    predicate(LockingMode == LM_LIGHTWEIGHT);
    match(Set cr (FastUnlock object box));
    effect(TEMP tmp1, TEMP tmp2, TEMP tmp3);
  
    ins_cost(10 * DEFAULT_COST);
    format %{ "fastunlock $object,$box\t! kills $tmp1,$tmp2,$tmp3 #@cmpFastUnlockLightweight" %}
  
    ins_encode %{
-     __ fast_unlock_lightweight($object$$Register, $box$$Register, $tmp1$$Register, $tmp2$$Register, $tmp3$$Register);
+     __ fast_unlock_lightweight($object$$Register, $box$$Register,
+                                $tmp1$$Register, $tmp2$$Register, $tmp3$$Register);
    %}
  
    ins_pipe(pipe_serial);
  %}
  
< prev index next >