LLVM: llvm::AArch64CC Namespace Reference (original) (raw)
| Enumerations | |
|---|---|
| enum | CondCode { EQ = 0x0 , NE = 0x1 , HS = 0x2 , LO = 0x3 , MI = 0x4 , PL = 0x5 , VS = 0x6 , VC = 0x7 , HI = 0x8 , LS = 0x9 , GE = 0xa , LT = 0xb , GT = 0xc , LE = 0xd , AL = 0xe , NV = 0xf , Invalid, ANY_ACTIVE = NE , FIRST_ACTIVE = MI , LAST_ACTIVE = LO , NONE_ACTIVE = EQ } |
| Functions | |
|---|---|
| static const char * | getCondCodeName (CondCode Code) |
| static CondCode | getInvertedCondCode (CondCode Code) |
| static CondCode | getSwappedCondition (CondCode CC) |
| getSwappedCondition - assume the flags are set by MI(a,b), return the condition code if we modify the instructions such that flags are set by MI(b,a). | |
| static unsigned | getNZCVToSatisfyCondCode (CondCode Code) |
| Given a condition code, return NZCV flags that would satisfy that condition. | |
| static bool | isValidCBCond (AArch64CC::CondCode Code) |
| True, if a given condition code can be used in a fused compare-and-branch instructions, false otherwise. |
◆ CondCode
| Enumerator |
|---|
| EQ |
| NE |
| HS |
| LO |
| MI |
| PL |
| VS |
| VC |
| HI |
| LS |
| GE |
| LT |
| GT |
| LE |
| AL |
| NV |
| Invalid |
| ANY_ACTIVE |
| FIRST_ACTIVE |
| LAST_ACTIVE |
| NONE_ACTIVE |
Definition at line 254 of file AArch64BaseInfo.h.
◆ getCondCodeName()
| const char * llvm::AArch64CC::getCondCodeName ( CondCode Code) | inlinestatic |
|---|
Definition at line 281 of file AArch64BaseInfo.h.
References AL, EQ, GE, GT, HI, HS, LE, llvm_unreachable, LO, LS, LT, MI, NE, NV, PL, VC, and VS.
Referenced by llvm::AArch64InstPrinter::printCondCode(), and llvm::AArch64InstPrinter::printInverseCondCode().
◆ getInvertedCondCode()
| CondCode llvm::AArch64CC::getInvertedCondCode ( CondCode Code) | inlinestatic |
|---|
Definition at line 303 of file AArch64BaseInfo.h.
Referenced by emitConditionalComparison(), emitConjunctionRec(), foldCSELOfCSEL(), getAArch64Cmp(), llvm::AArch64InstrInfo::insertSelect(), isSetCC(), llvm::AArch64InstrInfo::optimizeCondBranch(), performAddCSelIntoCSinc(), performANDORCSELCombine(), performANDSETCCCombine(), performSetccAddFolding(), llvm::AArch64InstPrinter::printInverseCondCode(), and llvm::AArch64InstrInfo::reverseBranchCondition().
◆ getNZCVToSatisfyCondCode()
| unsigned llvm::AArch64CC::getNZCVToSatisfyCondCode ( CondCode Code) | inlinestatic |
|---|
Given a condition code, return NZCV flags that would satisfy that condition.
The flag bits are in the format expected by the ccmp instructions. Note that many different flag settings can satisfy a given condition code, this function just returns one of them.
Definition at line 343 of file AArch64BaseInfo.h.
References llvm::CallingConv::C, EQ, GE, GT, HI, HS, LE, llvm_unreachable, LO, LS, LT, MI, N, NE, PL, VC, and VS.
Referenced by emitConditionalComparison(), and performANDORCSELCombine().
◆ getSwappedCondition()
| CondCode llvm::AArch64CC::getSwappedCondition ( CondCode CC) | inlinestatic |
|---|
getSwappedCondition - assume the flags are set by MI(a,b), return the condition code if we modify the instructions such that flags are set by MI(b,a).
Definition at line 312 of file AArch64BaseInfo.h.
References AL, EQ, GE, GT, HI, HS, LE, LO, LS, LT, and NE.
◆ isValidCBCond()
| bool llvm::AArch64CC::isValidCBCond ( AArch64CC::CondCode Code) | inlinestatic |
|---|
True, if a given condition code can be used in a fused compare-and-branch instructions, false otherwise.
Definition at line 367 of file AArch64BaseInfo.h.