8206975: AArch64: Fix CompareAndSwapOp when useLSE is enabled in Graal
Reviewed-by: adinn, aph
This commit is contained in:
parent
2e36eebdd2
commit
45158a4766
@ -83,7 +83,7 @@ public class AArch64AtomicMove {
|
|||||||
if (AArch64LIRFlagsVersioned.useLSE(masm.target.arch)) {
|
if (AArch64LIRFlagsVersioned.useLSE(masm.target.arch)) {
|
||||||
Register expected = asRegister(expectedValue);
|
Register expected = asRegister(expectedValue);
|
||||||
masm.mov(size, result, expected);
|
masm.mov(size, result, expected);
|
||||||
masm.cas(size, expected, newVal, address, true /* acquire */, true /* release */);
|
masm.cas(size, result, newVal, address, true /* acquire */, true /* release */);
|
||||||
AArch64Compare.gpCompare(masm, resultValue, expectedValue);
|
AArch64Compare.gpCompare(masm, resultValue, expectedValue);
|
||||||
} else {
|
} else {
|
||||||
// We could avoid using a scratch register here, by reusing resultValue for the
|
// We could avoid using a scratch register here, by reusing resultValue for the
|
||||||
|
Loading…
x
Reference in New Issue
Block a user