14 #ifndef MIPSSEINSTRUCTIONINFO_H
15 #define MIPSSEINSTRUCTIONINFO_H
45 int &FrameIndex)
const;
49 unsigned DestReg,
unsigned SrcReg,
54 unsigned SrcReg,
bool isKill,
int FrameIndex,
57 int64_t Offset)
const;
61 unsigned DestReg,
int FrameIndex,
64 int64_t Offset)
const;
79 unsigned *NewImm)
const;
82 virtual unsigned getAnalyzableBrOpc(
unsigned Opc)
const;
87 std::pair<bool, bool> compareOpndSize(
unsigned Opc,
91 unsigned NewOpc)
const;
94 unsigned LoOpc,
unsigned HiOpc,
95 bool HasExplicitDef)
const;
108 unsigned CvtOpc,
unsigned MovOpc,
bool IsI64)
const;
virtual const MipsRegisterInfo & getRegisterInfo() const
void adjustStackPtr(unsigned SP, int64_t Amount, MachineBasicBlock &MBB, MachineBasicBlock::iterator I) const
Adjust SP by Amount bytes.
virtual unsigned getOppositeBranchOpc(unsigned Opc) const
virtual unsigned isLoadFromStackSlot(const MachineInstr *MI, int &FrameIndex) const
MipsSEInstrInfo(MipsTargetMachine &TM)
bundle_iterator< MachineInstr, instr_iterator > iterator
virtual void copyPhysReg(MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, DebugLoc DL, unsigned DestReg, unsigned SrcReg, bool KillSrc) const
virtual void storeRegToStack(MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, unsigned SrcReg, bool isKill, int FrameIndex, const TargetRegisterClass *RC, const TargetRegisterInfo *TRI, int64_t Offset) const
virtual void loadRegFromStack(MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, unsigned DestReg, int FrameIndex, const TargetRegisterClass *RC, const TargetRegisterInfo *TRI, int64_t Offset) const
virtual bool expandPostRAPseudo(MachineBasicBlock::iterator MI) const
unsigned loadImmediate(int64_t Imm, MachineBasicBlock &MBB, MachineBasicBlock::iterator II, DebugLoc DL, unsigned *NewImm) const
virtual unsigned isStoreToStackSlot(const MachineInstr *MI, int &FrameIndex) const