LLVM: llvm::CSKYInstrInfo Class Reference (original) (raw)

#include "[Target/CSKY/CSKYInstrInfo.h](CSKYInstrInfo%5F8h%5Fsource.html)"

Public Member Functions
CSKYInstrInfo (const CSKYSubtarget &STI, const CSKYRegisterInfo &RI)
Register isLoadFromStackSlot (const MachineInstr &MI, int &FrameIndex) const override
Register isStoreToStackSlot (const MachineInstr &MI, int &FrameIndex) const override
void storeRegToStackSlot (MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, Register SrcReg, bool IsKill, int FrameIndex, const TargetRegisterClass *RC, Register VReg, MachineInstr::MIFlag Flags=MachineInstr::NoFlags) const override
void loadRegFromStackSlot (MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, Register DestReg, int FrameIndex, const TargetRegisterClass *RC, Register VReg, MachineInstr::MIFlag Flags=MachineInstr::NoFlags) const override
void copyPhysReg (MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, const DebugLoc &DL, Register DestReg, Register SrcReg, bool KillSrc, bool RenamableDest=false, bool RenamableSrc=false) const override
unsigned insertBranch (MachineBasicBlock &MBB, MachineBasicBlock *TBB, MachineBasicBlock *FBB, ArrayRef< MachineOperand > Cond, const DebugLoc &DL, int *BytesAdded=nullptr) const override
bool analyzeBranch (MachineBasicBlock &MBB, MachineBasicBlock *&TBB, MachineBasicBlock *&FBB, SmallVectorImpl< MachineOperand > &Cond, bool AllowModify=false) const override
unsigned removeBranch (MachineBasicBlock &MBB, int *BytesRemoved=nullptr) const override
bool reverseBranchCondition (SmallVectorImpl< MachineOperand > &Cond) const override
MachineBasicBlock * getBranchDestBlock (const MachineInstr &MI) const override
unsigned getInstSizeInBytes (const MachineInstr &MI) const override
Register getGlobalBaseReg (MachineFunction &MF) const
Register movImm (MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, const DebugLoc &DL, uint64_t Val, MachineInstr::MIFlag Flag=MachineInstr::NoFlags) const

Definition at line 27 of file CSKYInstrInfo.h.

analyzeBranch()

copyPhysReg()

Definition at line 480 of file CSKYInstrInfo.cpp.

References llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addReg(), assert(), llvm::BuildMI(), contains(), llvm::dbgs(), llvm::RegState::Define, DL, llvm::get(), llvm::getDeadRegState(), llvm::getKillRegState(), I, LLVM_DEBUG, llvm_unreachable, MBB, and STI.

getBranchDestBlock()

getGlobalBaseReg()

Definition at line 569 of file CSKYInstrInfo.cpp.

References llvm::MachineInstrBuilder::addConstantPoolIndex(), llvm::MachineInstrBuilder::addMemOperand(), llvm::CSKYCP::ADDR, llvm::MachineInstrBuilder::addReg(), llvm::MachineBasicBlock::begin(), llvm::BuildMI(), llvm::CSKYConstantPoolSymbol::Create(), DL, llvm::MachineFunction::front(), llvm::get(), llvm::MachineFunction::getConstantPool(), llvm::MachinePointerInfo::getConstantPool(), llvm::Function::getContext(), llvm::MachineFunction::getFunction(), llvm::CSKYMachineFunctionInfo::getGlobalBaseReg(), llvm::MachineFunction::getInfo(), llvm::Type::getInt32Ty(), llvm::MachineFunction::getMachineMemOperand(), llvm::MachineFunction::getRegInfo(), MBBI, llvm::MachineMemOperand::MOLoad, MRI, and llvm::CSKYMachineFunctionInfo::setGlobalBaseReg().

getInstSizeInBytes()

insertBranch()

Definition at line 156 of file CSKYInstrInfo.cpp.

References llvm::MachineInstrBuilder::add(), llvm::MachineInstrBuilder::addMBB(), assert(), llvm::BuildMI(), Cond, DL, llvm::get(), getInstSizeInBytes(), MBB, MI, Opc, and TBB.

isLoadFromStackSlot()

isStoreToStackSlot()

loadRegFromStackSlot()

Definition at line 437 of file CSKYInstrInfo.cpp.

References llvm::MachineInstrBuilder::addFrameIndex(), llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addMemOperand(), llvm::BuildMI(), DL, llvm::get(), llvm::MachinePointerInfo::getFixedStack(), llvm::MachineFunction::getFrameInfo(), llvm::MachineFunction::getInfo(), llvm::MachineFunction::getMachineMemOperand(), I, llvm_unreachable, MBB, llvm::MachineMemOperand::MOLoad, and llvm::CSKYMachineFunctionInfo::setSpillsCR().

movImm()

Definition at line 226 of file CSKYInstrInfo.cpp.

References llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addReg(), llvm::BuildMI(), DL, llvm::get(), llvm::isInt(), llvm::isShiftedUInt(), llvm::isUInt(), MBB, MBBI, MRI, llvm::report_fatal_error(), llvm::MachineInstrBuilder::setMIFlags(), and STI.

removeBranch()

reverseBranchCondition()

storeRegToStackSlot()

Definition at line 393 of file CSKYInstrInfo.cpp.

References llvm::MachineInstrBuilder::addFrameIndex(), llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addMemOperand(), llvm::MachineInstrBuilder::addReg(), llvm::BuildMI(), DL, llvm::get(), llvm::MachinePointerInfo::getFixedStack(), llvm::MachineFunction::getFrameInfo(), llvm::MachineFunction::getInfo(), llvm::getKillRegState(), llvm::MachineFunction::getMachineMemOperand(), I, llvm_unreachable, MBB, llvm::MachineMemOperand::MOStore, and llvm::CSKYMachineFunctionInfo::setSpillsCR().

STI


The documentation for this class was generated from the following files: