14 #ifndef LLVM_LIB_TARGET_NVPTX_NVPTXINSTRINFO_H
15 #define LLVM_LIB_TARGET_NVPTX_NVPTXINSTRINFO_H
21 #define GET_INSTRINFO_HEADER
22 #include "NVPTXGenInstrInfo.inc"
28 virtual void anchor();
54 unsigned DestReg,
unsigned SrcReg,
bool KillSrc)
const override;
56 unsigned &DestReg)
const;
bool isStoreInstr(const MachineInstr &MI, unsigned &AddrSpace) const
unsigned getLdStCodeAddrSpace(const MachineInstr &MI) const
This class consists of common code factored out of the SmallVector class to reduce code duplication b...
bool isReadSpecialReg(MachineInstr &MI) const
unsigned InsertBranch(MachineBasicBlock &MBB, MachineBasicBlock *TBB, MachineBasicBlock *FBB, ArrayRef< MachineOperand > Cond, DebugLoc DL) const override
ArrayRef - Represent a constant reference to an array (0 or more elements consecutively in memory)...
virtual bool CanTailMerge(const MachineInstr *MI) const
unsigned RemoveBranch(MachineBasicBlock &MBB) const override
bundle_iterator - MachineBasicBlock iterator that automatically skips over MIs that are inside bundle...
const MachineOperand & getOperand(unsigned i) const
void copyPhysReg(MachineBasicBlock &MBB, MachineBasicBlock::iterator I, DebugLoc DL, unsigned DestReg, unsigned SrcReg, bool KillSrc) const override
bool AnalyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB, MachineBasicBlock *&FBB, SmallVectorImpl< MachineOperand > &Cond, bool AllowModify) const override
AnalyzeBranch - Analyze the branching code at the end of MBB, returning true if it cannot be understo...
Representation of each machine instruction.
const NVPTXRegisterInfo & getRegisterInfo() const
virtual bool isMoveInstr(const MachineInstr &MI, unsigned &SrcReg, unsigned &DestReg) const
bool isLoadInstr(const MachineInstr &MI, unsigned &AddrSpace) const