src/cpu/sparc/vm/sparc.ad

Print this page

        

@@ -2776,14 +2776,11 @@
     MacroAssembler _masm(&cbuf);
     Register Rmem = reg_to_register_object($mem$$reg);
     Register Rold = reg_to_register_object($old$$reg);
     Register Rnew = reg_to_register_object($new$$reg);
 
-    // casx_under_lock picks 1 of 3 encodings:
-    // For 32-bit pointers you get a 32-bit CAS
-    // For 64-bit pointers you get a 64-bit CASX
-    __ casn(Rmem, Rold, Rnew); // Swap(*Rmem,Rnew) if *Rmem == Rold
+    __ cas_ptr(Rmem, Rold, Rnew); // Swap(*Rmem,Rnew) if *Rmem == Rold
     __ cmp( Rold, Rnew );
   %}
 
   enc_class enc_casx( iRegP mem, iRegL old, iRegL new) %{
     Register Rmem = reg_to_register_object($mem$$reg);