< prev index next >

src/hotspot/cpu/aarch64/macroAssembler_aarch64.hpp

Print this page

        

*** 993,1008 **** void atomic_xchgw(Register prev, Register newv, Register addr); void atomic_xchgal(Register prev, Register newv, Register addr); void atomic_xchgalw(Register prev, Register newv, Register addr); void orptr(Address adr, RegisterOrConstant src) { ! ldr(rscratch2, adr); if (src.is_register()) ! orr(rscratch2, rscratch2, src.as_register()); else ! orr(rscratch2, rscratch2, src.as_constant()); ! str(rscratch2, adr); } // A generic CAS; success or failure is in the EQ flag. // Clobbers rscratch1 void cmpxchg(Register addr, Register expected, Register new_val, --- 993,1008 ---- void atomic_xchgw(Register prev, Register newv, Register addr); void atomic_xchgal(Register prev, Register newv, Register addr); void atomic_xchgalw(Register prev, Register newv, Register addr); void orptr(Address adr, RegisterOrConstant src) { ! ldr(rscratch1, adr); if (src.is_register()) ! orr(rscratch1, rscratch1, src.as_register()); else ! orr(rscratch1, rscratch1, src.as_constant()); ! str(rscratch1, adr); } // A generic CAS; success or failure is in the EQ flag. // Clobbers rscratch1 void cmpxchg(Register addr, Register expected, Register new_val,
< prev index next >