LLVM: lib/Target/AArch64/AArch64InstrInfo.h File Reference (original) (raw)
#include "[AArch64.h](AArch64%5F8h%5Fsource.html)"#include "[AArch64RegisterInfo.h](AArch64RegisterInfo%5F8h%5Fsource.html)"#include "[llvm/CodeGen/TargetInstrInfo.h](TargetInstrInfo%5F8h%5Fsource.html)"#include "[llvm/Support/TypeSize.h](TypeSize%5F8h%5Fsource.html)"#include <optional>#include "AArch64GenInstrInfo.inc"
Go to the source code of this file.
| Namespaces | |
|---|---|
| namespace | llvm |
| This is an optimization pass for GlobalISel generic memory operations. | |
| namespace | llvm::AArch64 |
| Macros | |
|---|---|
| #define | GET_INSTRINFO_HEADER |
| #define | FALKOR_STRIDED_ACCESS_MD "falkor.strided.access" |
| #define | GET_INSTRINFO_HELPER_DECLS |
| #define | TSFLAG_ELEMENT_SIZE_TYPE(X) |
| #define | TSFLAG_DESTRUCTIVE_INST_TYPE(X) |
| #define | TSFLAG_FALSE_LANE_TYPE(X) |
| #define | TSFLAG_INSTR_FLAGS(X) |
| #define | TSFLAG_SME_MATRIX_TYPE(X) |
| Functions | |
|---|---|
| std::optional< UsedNZCV > | llvm::examineCFlagsUse (MachineInstr &MI, MachineInstr &CmpInstr, const TargetRegisterInfo &TRI, SmallVectorImpl< MachineInstr * > *CCUseInstrs=nullptr) |
| bool | llvm::isNZCVTouchedInInstructionRange (const MachineInstr &DefMI, const MachineInstr &UseMI, const TargetRegisterInfo *TRI) |
| Return true if there is an instruction /after/ DefMI and before UseMI which either reads or clobbers NZCV. | |
| MCCFIInstruction | llvm::createDefCFA (const TargetRegisterInfo &TRI, unsigned FrameReg, unsigned Reg, const StackOffset &Offset, bool LastAdjustmentWasScalable=true) |
| MCCFIInstruction | llvm::createCFAOffset (const TargetRegisterInfo &MRI, unsigned Reg, const StackOffset &OffsetFromDefCFA, std::optional< int64_t > IncomingVGOffsetFromDefCFA) |
| void | llvm::emitFrameOffset (MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, const DebugLoc &DL, unsigned DestReg, unsigned SrcReg, StackOffset Offset, const TargetInstrInfo *TII, MachineInstr::MIFlag=MachineInstr::NoFlags, bool SetNZCV=false, bool NeedsWinCFI=false, bool *HasWinCFI=nullptr, bool EmitCFAOffset=false, StackOffset InitialOffset={}, unsigned FrameReg=AArch64::SP) |
| emitFrameOffset - Emit instructions as needed to set DestReg to SrcReg plus Offset. | |
| bool | llvm::rewriteAArch64FrameIndex (MachineInstr &MI, unsigned FrameRegIdx, unsigned FrameReg, StackOffset &Offset, const AArch64InstrInfo *TII) |
| rewriteAArch64FrameIndex - Rewrite MI to access 'Offset' bytes from the FP. | |
| int | llvm::isAArch64FrameOffsetLegal (const MachineInstr &MI, StackOffset &Offset, bool *OutUseUnscaledOp=nullptr, unsigned *OutUnscaledOp=nullptr, int64_t *EmittableOffset=nullptr) |
| Check if the Offset is a valid frame offset for MI. | |
| static bool | llvm::isUncondBranchOpcode (int Opc) |
| static bool | llvm::isCondBranchOpcode (int Opc) |
| static bool | llvm::isIndirectBranchOpcode (int Opc) |
| static bool | llvm::isIndirectCallOpcode (unsigned Opc) |
| static bool | llvm::isPTrueOpcode (unsigned Opc) |
| unsigned | llvm::getBLRCallOpcode (const MachineFunction &MF) |
| Return opcode to be used for indirect calls. | |
| static unsigned | llvm::getXPACOpcodeForKey (AArch64PACKey::ID K) |
| Return XPAC opcode to be used for a ptrauth strip using the given key. | |
| static unsigned | llvm::getAUTOpcodeForKey (AArch64PACKey::ID K, bool Zero) |
| Return AUT opcode to be used for a ptrauth auth using the given key, or its AUT*Z variant that doesn't take a discriminator operand, using zero instead. | |
| static unsigned | llvm::getPACOpcodeForKey (AArch64PACKey::ID K, bool Zero) |
| Return PAC opcode to be used for a ptrauth sign using the given key, or its PAC*Z variant that doesn't take a discriminator operand, using zero instead. | |
| int | llvm::AArch64::getSVEPseudoMap (uint16_t Opcode) |
| int | llvm::AArch64::getSVERevInstr (uint16_t Opcode) |
| int | llvm::AArch64::getSVENonRevInstr (uint16_t Opcode) |
| int | llvm::AArch64::getSMEPseudoMap (uint16_t Opcode) |
◆ FALKOR_STRIDED_ACCESS_MD
#define FALKOR_STRIDED_ACCESS_MD "falkor.strided.access"
◆ GET_INSTRINFO_HEADER
#define GET_INSTRINFO_HEADER
◆ GET_INSTRINFO_HELPER_DECLS
#define GET_INSTRINFO_HELPER_DECLS
◆ TSFLAG_DESTRUCTIVE_INST_TYPE
| #define TSFLAG_DESTRUCTIVE_INST_TYPE | ( | X | ) |
|---|
Value:
((X) << 3)
static TableGen::Emitter::OptClass< SkeletonEmitter > X("gen-skeleton-class", "Generate example skeleton class")
Definition at line 811 of file AArch64InstrInfo.h.
◆ TSFLAG_ELEMENT_SIZE_TYPE
| #define TSFLAG_ELEMENT_SIZE_TYPE | ( | X | ) |
|---|
◆ TSFLAG_FALSE_LANE_TYPE
| #define TSFLAG_FALSE_LANE_TYPE | ( | X | ) |
|---|
◆ TSFLAG_INSTR_FLAGS
| #define TSFLAG_INSTR_FLAGS | ( | X | ) |
|---|
◆ TSFLAG_SME_MATRIX_TYPE
| #define TSFLAG_SME_MATRIX_TYPE | ( | X | ) |
|---|