public enum AArch64ArithmeticOp extends Enum<AArch64ArithmeticOp>
| Modifier and Type | Class and Description |
|---|---|
static class |
AArch64ArithmeticOp.ARMv8ConstantCategory
Specifies what constants can be used directly without having to be loaded into a register
with the given instruction.
|
static class |
AArch64ArithmeticOp.ASIMDBinaryConstOp |
static class |
AArch64ArithmeticOp.ASIMDBinaryOp |
static class |
AArch64ArithmeticOp.ASIMDBinaryTwoStepOp
For ASIMD, some arithmetic operations require generating two instructions and eagerly use the
result register.
|
static class |
AArch64ArithmeticOp.ASIMDMultiplyAddSubOp |
static class |
AArch64ArithmeticOp.ASIMDUnaryOp |
static class |
AArch64ArithmeticOp.BinaryConstOp |
static class |
AArch64ArithmeticOp.BinaryOp |
static class |
AArch64ArithmeticOp.BinaryShiftOp |
static class |
AArch64ArithmeticOp.ExtendedAddSubShiftOp |
static class |
AArch64ArithmeticOp.MultiplyAddSubOp |
static class |
AArch64ArithmeticOp.UnaryOp |
| Enum Constant and Description |
|---|
ABS |
ADD |
ADDS |
AND |
ANDS |
ASR |
BIC |
DIV |
EON |
FABS |
FADD |
FDIV |
FMADD |
FMAX |
FMIN |
FMSUB |
FMUL |
FNEG |
FRINTM |
FRINTN |
FRINTP |
FRINTZ |
FSQRT |
FSUB |
LSL |
LSR |
MADD |
MNEG |
MSUB |
MUL |
MULVS |
NEG |
NEGS |
NOT |
OR |
ORN |
REM |
ROR |
SMADDL |
SMNEGL |
SMSUBL |
SMULH |
SMULL |
SUB |
SUBS |
TST |
UDIV |
UMULH |
UREM |
XOR |
| Modifier and Type | Field and Description |
|---|---|
AArch64ArithmeticOp.ARMv8ConstantCategory |
category |
| Modifier and Type | Method and Description |
|---|---|
static AArch64LIRInstruction |
generateASIMDBinaryInstruction(AArch64ArithmeticOp op,
AllocatableValue result,
AllocatableValue a,
AllocatableValue b) |
static AArch64ArithmeticOp |
valueOf(String name)
Returns the enum constant of this type with the specified name.
|
static AArch64ArithmeticOp[] |
values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
public static final AArch64ArithmeticOp NEG
public static final AArch64ArithmeticOp NEGS
public static final AArch64ArithmeticOp NOT
public static final AArch64ArithmeticOp ADD
public static final AArch64ArithmeticOp ADDS
public static final AArch64ArithmeticOp SUB
public static final AArch64ArithmeticOp SUBS
public static final AArch64ArithmeticOp MUL
public static final AArch64ArithmeticOp MULVS
public static final AArch64ArithmeticOp MNEG
public static final AArch64ArithmeticOp DIV
public static final AArch64ArithmeticOp SMULH
public static final AArch64ArithmeticOp UMULH
public static final AArch64ArithmeticOp SMULL
public static final AArch64ArithmeticOp SMNEGL
public static final AArch64ArithmeticOp MADD
public static final AArch64ArithmeticOp MSUB
public static final AArch64ArithmeticOp FMADD
public static final AArch64ArithmeticOp FMSUB
public static final AArch64ArithmeticOp SMADDL
public static final AArch64ArithmeticOp SMSUBL
public static final AArch64ArithmeticOp REM
public static final AArch64ArithmeticOp UDIV
public static final AArch64ArithmeticOp UREM
public static final AArch64ArithmeticOp AND
public static final AArch64ArithmeticOp ANDS
public static final AArch64ArithmeticOp OR
public static final AArch64ArithmeticOp XOR
public static final AArch64ArithmeticOp TST
public static final AArch64ArithmeticOp BIC
public static final AArch64ArithmeticOp ORN
public static final AArch64ArithmeticOp EON
public static final AArch64ArithmeticOp LSL
public static final AArch64ArithmeticOp LSR
public static final AArch64ArithmeticOp ASR
public static final AArch64ArithmeticOp ROR
public static final AArch64ArithmeticOp ABS
public static final AArch64ArithmeticOp FADD
public static final AArch64ArithmeticOp FSUB
public static final AArch64ArithmeticOp FMUL
public static final AArch64ArithmeticOp FDIV
public static final AArch64ArithmeticOp FNEG
public static final AArch64ArithmeticOp FABS
public static final AArch64ArithmeticOp FRINTM
public static final AArch64ArithmeticOp FRINTN
public static final AArch64ArithmeticOp FRINTP
public static final AArch64ArithmeticOp FRINTZ
public static final AArch64ArithmeticOp FMAX
public static final AArch64ArithmeticOp FMIN
public static final AArch64ArithmeticOp FSQRT
public final AArch64ArithmeticOp.ARMv8ConstantCategory category
public static AArch64ArithmeticOp[] values()
public static AArch64ArithmeticOp valueOf(String name)
name - the name of the enum constant to be returned.IllegalArgumentException - if this enum type has no constant with the specified nameNullPointerException - if the argument is nullpublic static AArch64LIRInstruction generateASIMDBinaryInstruction(AArch64ArithmeticOp op, AllocatableValue result, AllocatableValue a, AllocatableValue b)