14 #ifndef LLVM_LIB_TARGET_ARM_THUMB2INSTRINFO_H 15 #define LLVM_LIB_TARGET_ARM_THUMB2INSTRINFO_H 22 class ScheduleHazardRecognizer;
43 const DebugLoc &DL,
unsigned DestReg,
unsigned SrcReg,
44 bool KillSrc)
const override;
54 unsigned DestReg,
int FrameIndex,
void storeRegToStackSlot(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, unsigned SrcReg, bool isKill, int FrameIndex, const TargetRegisterClass *RC, const TargetRegisterInfo *TRI) const override
This class represents lattice values for constants.
unsigned const TargetRegisterInfo * TRI
bool isLegalToSplitMBBAt(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI) const override
Instances of this class represent a single low-level machine instruction.
void copyPhysReg(MachineBasicBlock &MBB, MachineBasicBlock::iterator I, const DebugLoc &DL, unsigned DestReg, unsigned SrcReg, bool KillSrc) const override
void loadRegFromStackSlot(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, unsigned DestReg, int FrameIndex, const TargetRegisterClass *RC, const TargetRegisterInfo *TRI) const override
unsigned getUnindexedOpcode(unsigned Opc) const override
void getNoop(MCInst &NopInst) const override
Return the noop instruction to use for a noop.
Thumb2InstrInfo(const ARMSubtarget &STI)
TargetRegisterInfo base class - We assume that the target defines a static array of TargetRegisterDes...
ARMCC::CondCodes getITInstrPredicate(const MachineInstr &MI, unsigned &PredReg)
getITInstrPredicate - Valid only in Thumb2 mode.
void ReplaceTailWithBranchTo(MachineBasicBlock::iterator Tail, MachineBasicBlock *NewDest) const override
Representation of each machine instruction.
const ThumbRegisterInfo & getRegisterInfo() const override
getRegisterInfo - TargetInstrInfo is a superset of MRegister info.