24 #include "AArch64GenSystemOperands.inc" 32 #include "AArch64GenSystemOperands.inc" 39 #include "AArch64GenSystemOperands.inc" 46 #include "AArch64GenSystemOperands.inc" 51 namespace AArch64ISB {
53 #include "AArch64GenSystemOperands.inc" 58 namespace AArch64TSB {
60 #include "AArch64GenSystemOperands.inc" 65 namespace AArch64PRCTX {
66 #define GET_PRCTX_IMPL 67 #include "AArch64GenSystemOperands.inc" 72 namespace AArch64PRFM {
74 #include "AArch64GenSystemOperands.inc" 79 namespace AArch64SVEPRFM {
80 #define GET_SVEPRFM_IMPL 81 #include "AArch64GenSystemOperands.inc" 86 namespace AArch64SVEPredPattern {
87 #define GET_SVEPREDPAT_IMPL 88 #include "AArch64GenSystemOperands.inc" 93 namespace AArch64ExactFPImm {
94 #define GET_EXACTFPIMM_IMPL 95 #include "AArch64GenSystemOperands.inc" 100 namespace AArch64PState {
101 #define GET_PSTATE_IMPL 102 #include "AArch64GenSystemOperands.inc" 107 namespace AArch64PSBHint {
109 #include "AArch64GenSystemOperands.inc" 114 namespace AArch64BTIHint {
116 #include "AArch64GenSystemOperands.inc" 121 namespace AArch64SysReg {
122 #define GET_SYSREG_IMPL 123 #include "AArch64GenSystemOperands.inc" 129 Regex GenericRegPattern(
"^S([0-3])_([0-7])_C([0-9]|1[0-5])_C([0-9]|1[0-5])_([0-7])$");
131 std::string UpperName = Name.
upper();
133 if (!GenericRegPattern.
match(UpperName, &Ops))
136 uint32_t Op0 = 0, Op1 = 0, CRn = 0, CRm = 0, Op2 = 0;
138 Ops[1].getAsInteger(10, Op0);
139 Ops[2].getAsInteger(10, Op1);
140 Ops[3].getAsInteger(10, CRn);
141 Ops[4].getAsInteger(10, CRm);
142 Ops[5].getAsInteger(10, Op2);
143 Bits = (Op0 << 14) | (Op1 << 11) | (CRn << 7) | (CRm << 3) | Op2;
161 namespace AArch64TLBI {
162 #define GET_TLBI_IMPL 163 #include "AArch64GenSystemOperands.inc" This class represents lattice values for constants.
amdgpu Simplify well known AMD library false Value Value const Twine & Name
LLVM_NODISCARD std::string upper() const
Convert the given ASCII string to uppercase.
This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small...
std::string utostr(uint64_t X, bool isNeg=false)
std::string genericRegisterString(uint32_t Bits)
uint32_t parseGenericRegister(StringRef Name)
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
bool match(StringRef String, SmallVectorImpl< StringRef > *Matches=nullptr)
matches - Match the regex against a given String.
StringRef - Represent a constant reference to a string, i.e.