public class AArch64AtomicMove extends Object
| Modifier and Type | Class and Description |
|---|---|
static class |
AArch64AtomicMove.AtomicReadAndAddLSEOp
Load (Read) and Add instruction.
|
static class |
AArch64AtomicMove.AtomicReadAndAddOp
Load (Read) and Add instruction.
|
static class |
AArch64AtomicMove.AtomicReadAndWriteOp
Load (Read) and Write instruction.
|
static class |
AArch64AtomicMove.CompareAndSwapOp
Compare and swap instruction.
|
| Constructor and Description |
|---|
AArch64AtomicMove() |
| Modifier and Type | Method and Description |
|---|---|
static AArch64LIRInstruction |
createAtomicReadAndAdd(LIRGenerator gen,
AArch64Kind kind,
AllocatableValue result,
AllocatableValue address,
Value delta)
Determines whether to use the atomic or load-store conditional implementation of atomic
read&add based on the available hardware features.
|
static void |
moveSPAndEmitCode(AArch64MacroAssembler masm,
Register input,
Consumer<Register> codeGen)
This helper method moves sp to a scratch gp register before generating the code.
|
public static void moveSPAndEmitCode(AArch64MacroAssembler masm, Register input, Consumer<Register> codeGen)
public static AArch64LIRInstruction createAtomicReadAndAdd(LIRGenerator gen, AArch64Kind kind, AllocatableValue result, AllocatableValue address, Value delta)