LLVM 20.0.0git
llvm::AArch64InstrInfo Member List

This is the complete list of members for llvm::AArch64InstrInfo, including all inherited members.

AArch64InstrInfo(const AArch64Subtarget &STI)llvm::AArch64InstrInfoexplicit
analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB, MachineBasicBlock *&FBB, SmallVectorImpl< MachineOperand > &Cond, bool AllowModify=false) const overridellvm::AArch64InstrInfo
analyzeBranchPredicate(MachineBasicBlock &MBB, MachineBranchPredicate &MBP, bool AllowModify) const overridellvm::AArch64InstrInfo
analyzeCompare(const MachineInstr &MI, Register &SrcReg, Register &SrcReg2, int64_t &CmpMask, int64_t &CmpValue) const overridellvm::AArch64InstrInfo
analyzeLoopForPipelining(MachineBasicBlock *LoopBB) const overridellvm::AArch64InstrInfo
areMemAccessesTriviallyDisjoint(const MachineInstr &MIa, const MachineInstr &MIb) const overridellvm::AArch64InstrInfo
buildClearRegister(Register Reg, MachineBasicBlock &MBB, MachineBasicBlock::iterator Iter, DebugLoc &DL, bool AllowSideEffects=true) const overridellvm::AArch64InstrInfo
buildOutlinedFrame(MachineBasicBlock &MBB, MachineFunction &MF, const outliner::OutlinedFunction &OF) const overridellvm::AArch64InstrInfo
canFoldIntoAddrMode(const MachineInstr &MemI, Register Reg, const MachineInstr &AddrI, ExtAddrMode &AM) const overridellvm::AArch64InstrInfo
canInsertSelect(const MachineBasicBlock &, ArrayRef< MachineOperand > Cond, Register, Register, Register, int &, int &, int &) const overridellvm::AArch64InstrInfo
convertToFlagSettingOpc(unsigned Opc)llvm::AArch64InstrInfostatic
copyGPRRegTuple(MachineBasicBlock &MBB, MachineBasicBlock::iterator I, const DebugLoc &DL, MCRegister DestReg, MCRegister SrcReg, bool KillSrc, unsigned Opcode, unsigned ZeroReg, llvm::ArrayRef< unsigned > Indices) constllvm::AArch64InstrInfo
copyPhysReg(MachineBasicBlock &MBB, MachineBasicBlock::iterator I, const DebugLoc &DL, MCRegister DestReg, MCRegister SrcReg, bool KillSrc, bool RenamableDest=false, bool RenamableSrc=false) const overridellvm::AArch64InstrInfo
copyPhysRegTuple(MachineBasicBlock &MBB, MachineBasicBlock::iterator I, const DebugLoc &DL, MCRegister DestReg, MCRegister SrcReg, bool KillSrc, unsigned Opcode, llvm::ArrayRef< unsigned > Indices) constllvm::AArch64InstrInfo
decomposeMachineOperandsTargetFlags(unsigned TF) const overridellvm::AArch64InstrInfo
decomposeStackOffsetForDwarfOffsets(const StackOffset &Offset, int64_t &ByteSized, int64_t &VGSized)llvm::AArch64InstrInfostatic
decomposeStackOffsetForFrameOffsets(const StackOffset &Offset, int64_t &NumBytes, int64_t &NumPredicateVectors, int64_t &NumDataVectors)llvm::AArch64InstrInfostatic
describeLoadedValue(const MachineInstr &MI, Register Reg) const overridellvm::AArch64InstrInfo
emitLdStWithAddr(MachineInstr &MemI, const ExtAddrMode &AM) const overridellvm::AArch64InstrInfo
expandPostRAPseudo(MachineInstr &MI) const overridellvm::AArch64InstrInfo
foldMemoryOperandImpl(MachineFunction &MF, MachineInstr &MI, ArrayRef< unsigned > Ops, MachineBasicBlock::iterator InsertPt, int FrameIndex, LiveIntervals *LIS=nullptr, VirtRegMap *VRM=nullptr) const overridellvm::AArch64InstrInfo
foldMemoryOperandImpl(MachineFunction &MF, MachineInstr &MI, ArrayRef< unsigned > Ops, MachineBasicBlock::iterator InsertPt, int FrameIndex, LiveIntervals *LIS=nullptr, VirtRegMap *VRM=nullptr) constllvm::AArch64InstrInfoinline
foldMemoryOperandImpl(MachineFunction &MF, MachineInstr &MI, ArrayRef< unsigned > Ops, MachineBasicBlock::iterator InsertPt, MachineInstr &LoadMI, LiveIntervals *LIS=nullptr) constllvm::AArch64InstrInfoinline
genAlternativeCodeSequence(MachineInstr &Root, unsigned Pattern, SmallVectorImpl< MachineInstr * > &InsInstrs, SmallVectorImpl< MachineInstr * > &DelInstrs, DenseMap< unsigned, unsigned > &InstrIdxForVirtReg) const overridellvm::AArch64InstrInfo
getAddrModeFromMemoryOp(const MachineInstr &MemI, const TargetRegisterInfo *TRI) const overridellvm::AArch64InstrInfo
getBranchDestBlock(const MachineInstr &MI) const overridellvm::AArch64InstrInfo
getCombinerObjective(unsigned Pattern) const overridellvm::AArch64InstrInfo
getElementSizeForOpcode(unsigned Opc) constllvm::AArch64InstrInfo
getInstSizeInBytes(const MachineInstr &MI) const overridellvm::AArch64InstrInfo
getLdStAmountOp(const MachineInstr &MI)llvm::AArch64InstrInfostatic
getLdStBaseOp(const MachineInstr &MI)llvm::AArch64InstrInfostatic
getLdStOffsetOp(const MachineInstr &MI)llvm::AArch64InstrInfostatic
getLoadStoreImmIdx(unsigned Opc)llvm::AArch64InstrInfostatic
getMachineCombinerPatterns(MachineInstr &Root, SmallVectorImpl< unsigned > &Patterns, bool DoRegPressureReduce) const overridellvm::AArch64InstrInfo
getMemOpBaseRegImmOfsOffsetOperand(MachineInstr &LdSt) constllvm::AArch64InstrInfo
getMemOperandsWithOffsetWidth(const MachineInstr &MI, SmallVectorImpl< const MachineOperand * > &BaseOps, int64_t &Offset, bool &OffsetIsScalable, LocationSize &Width, const TargetRegisterInfo *TRI) const overridellvm::AArch64InstrInfo
getMemOperandWithOffsetWidth(const MachineInstr &MI, const MachineOperand *&BaseOp, int64_t &Offset, bool &OffsetIsScalable, TypeSize &Width, const TargetRegisterInfo *TRI) constllvm::AArch64InstrInfo
getMemOpInfo(unsigned Opcode, TypeSize &Scale, TypeSize &Width, int64_t &MinOffset, int64_t &MaxOffset)llvm::AArch64InstrInfostatic
getMemScale(unsigned Opc)llvm::AArch64InstrInfostatic
getMemScale(const MachineInstr &MI)llvm::AArch64InstrInfoinlinestatic
getNop() const overridellvm::AArch64InstrInfo
getOutlinableRanges(MachineBasicBlock &MBB, unsigned &Flags) const overridellvm::AArch64InstrInfo
getOutliningCandidateInfo(const MachineModuleInfo &MMI, std::vector< outliner::Candidate > &RepeatedSequenceLocs, unsigned MinRepeats) const overridellvm::AArch64InstrInfo
getOutliningTypeImpl(const MachineModuleInfo &MMI, MachineBasicBlock::iterator &MIT, unsigned Flags) const overridellvm::AArch64InstrInfo
getRegisterInfo() constllvm::AArch64InstrInfoinline
getSerializableBitmaskMachineOperandTargetFlags() const overridellvm::AArch64InstrInfo
getSerializableDirectMachineOperandTargetFlags() const overridellvm::AArch64InstrInfo
getSerializableMachineMemOperandTargetFlags() const overridellvm::AArch64InstrInfo
getTailDuplicateSize(CodeGenOptLevel OptLevel) const overridellvm::AArch64InstrInfo
getUnscaledLdSt(unsigned Opc)llvm::AArch64InstrInfostatic
hasBTISemantics(const MachineInstr &MI)llvm::AArch64InstrInfostatic
hasUnscaledLdStOffset(unsigned Opc)llvm::AArch64InstrInfostatic
hasUnscaledLdStOffset(MachineInstr &MI)llvm::AArch64InstrInfoinlinestatic
insertBranch(MachineBasicBlock &MBB, MachineBasicBlock *TBB, MachineBasicBlock *FBB, ArrayRef< MachineOperand > Cond, const DebugLoc &DL, int *BytesAdded=nullptr) const overridellvm::AArch64InstrInfo
insertIndirectBranch(MachineBasicBlock &MBB, MachineBasicBlock &NewDestBB, MachineBasicBlock &RestoreBB, const DebugLoc &DL, int64_t BrOffset, RegScavenger *RS) const overridellvm::AArch64InstrInfo
insertNoop(MachineBasicBlock &MBB, MachineBasicBlock::iterator MI) const overridellvm::AArch64InstrInfo
insertOutlinedCall(Module &M, MachineBasicBlock &MBB, MachineBasicBlock::iterator &It, MachineFunction &MF, outliner::Candidate &C) const overridellvm::AArch64InstrInfo
insertSelect(MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, const DebugLoc &DL, Register DstReg, ArrayRef< MachineOperand > Cond, Register TrueReg, Register FalseReg) const overridellvm::AArch64InstrInfo
isAddImmediate(const MachineInstr &MI, Register Reg) const overridellvm::AArch64InstrInfo
isAsCheapAsAMove(const MachineInstr &MI) const overridellvm::AArch64InstrInfo
isAssociativeAndCommutative(const MachineInstr &Inst, bool Invert) const overridellvm::AArch64InstrInfo
isBranchOffsetInRange(unsigned BranchOpc, int64_t BrOffset) const overridellvm::AArch64InstrInfo
isCandidateToMergeOrPair(const MachineInstr &MI) constllvm::AArch64InstrInfo
isCoalescableExtInstr(const MachineInstr &MI, Register &SrcReg, Register &DstReg, unsigned &SubIdx) const overridellvm::AArch64InstrInfo
isCopyInstrImpl(const MachineInstr &MI) const overridellvm::AArch64InstrInfoprotected
isCopyLikeInstrImpl(const MachineInstr &MI) const overridellvm::AArch64InstrInfoprotected
isExtendLikelyToBeFolded(MachineInstr &ExtMI, MachineRegisterInfo &MRI) const overridellvm::AArch64InstrInfo
isFalkorShiftExtFast(const MachineInstr &MI)llvm::AArch64InstrInfostatic
isFpOrNEON(Register Reg)llvm::AArch64InstrInfostatic
isFpOrNEON(const MachineInstr &MI)llvm::AArch64InstrInfostatic
isFPRCopy(const MachineInstr &MI)llvm::AArch64InstrInfostatic
isFunctionSafeToOutlineFrom(MachineFunction &MF, bool OutlineFromLinkOnceODRs) const overridellvm::AArch64InstrInfo
isFunctionSafeToSplit(const MachineFunction &MF) const overridellvm::AArch64InstrInfo
isGPRCopy(const MachineInstr &MI)llvm::AArch64InstrInfostatic
isGPRZero(const MachineInstr &MI)llvm::AArch64InstrInfostatic
isHForm(const MachineInstr &MI)llvm::AArch64InstrInfostatic
isLdStPairSuppressed(const MachineInstr &MI)llvm::AArch64InstrInfostatic
isLegalAddressingMode(unsigned NumBytes, int64_t Offset, unsigned Scale) constllvm::AArch64InstrInfo
isLoadFromStackSlot(const MachineInstr &MI, int &FrameIndex) const overridellvm::AArch64InstrInfo
isMBBSafeToSplitToCold(const MachineBasicBlock &MBB) const overridellvm::AArch64InstrInfo
isPairableLdStInst(const MachineInstr &MI)llvm::AArch64InstrInfostatic
isPairedLdSt(const MachineInstr &MI)llvm::AArch64InstrInfostatic
isPreLd(const MachineInstr &MI)llvm::AArch64InstrInfostatic
isPreLdSt(const MachineInstr &MI)llvm::AArch64InstrInfostatic
isPreSt(const MachineInstr &MI)llvm::AArch64InstrInfostatic
isPTestLikeOpcode(unsigned Opc) constllvm::AArch64InstrInfo
isQForm(const MachineInstr &MI)llvm::AArch64InstrInfostatic
isSchedulingBoundary(const MachineInstr &MI, const MachineBasicBlock *MBB, const MachineFunction &MF) const overridellvm::AArch64InstrInfo
isSEHInstruction(const MachineInstr &MI)llvm::AArch64InstrInfostatic
isStoreToStackSlot(const MachineInstr &MI, int &FrameIndex) const overridellvm::AArch64InstrInfo
isStridedAccess(const MachineInstr &MI)llvm::AArch64InstrInfostatic
isSubregFoldable() const overridellvm::AArch64InstrInfoinline
isTailCallReturnInst(const MachineInstr &MI)llvm::AArch64InstrInfostatic
isThroughputPattern(unsigned Pattern) const overridellvm::AArch64InstrInfo
isWhileOpcode(unsigned Opc) constllvm::AArch64InstrInfo
loadRegFromStackSlot(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, Register DestReg, int FrameIndex, const TargetRegisterClass *RC, const TargetRegisterInfo *TRI, Register VReg) const overridellvm::AArch64InstrInfo
mergeOutliningCandidateAttributes(Function &F, std::vector< outliner::Candidate > &Candidates) const overridellvm::AArch64InstrInfo
optimizeCompareInstr(MachineInstr &CmpInstr, Register SrcReg, Register SrcReg2, int64_t CmpMask, int64_t CmpValue, const MachineRegisterInfo *MRI) const overridellvm::AArch64InstrInfo
optimizeCondBranch(MachineInstr &MI) const overridellvm::AArch64InstrInfo
probedStackAlloc(MachineBasicBlock::iterator MBBI, Register TargetReg, bool FrameSetup) constllvm::AArch64InstrInfo
removeBranch(MachineBasicBlock &MBB, int *BytesRemoved=nullptr) const overridellvm::AArch64InstrInfo
reverseBranchCondition(SmallVectorImpl< MachineOperand > &Cond) const overridellvm::AArch64InstrInfo
shouldClusterMemOps(ArrayRef< const MachineOperand * > BaseOps1, int64_t Offset1, bool OffsetIsScalable1, ArrayRef< const MachineOperand * > BaseOps2, int64_t Offset2, bool OffsetIsScalable2, unsigned ClusterSize, unsigned NumBytes) const overridellvm::AArch64InstrInfo
shouldOutlineFromFunctionByDefault(MachineFunction &MF) const overridellvm::AArch64InstrInfo
storeRegToStackSlot(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, Register SrcReg, bool isKill, int FrameIndex, const TargetRegisterClass *RC, const TargetRegisterInfo *TRI, Register VReg) const overridellvm::AArch64InstrInfo
suppressLdStPair(MachineInstr &MI)llvm::AArch64InstrInfostatic
useMachineCombiner() const overridellvm::AArch64InstrInfo