|
LLVM
4.0.0
|
#include <Thumb2InstrInfo.h>
Additional Inherited Members | |
Protected Member Functions inherited from llvm::ARMBaseInstrInfo | |
| ARMBaseInstrInfo (const ARMSubtarget &STI) | |
| void | expandLoadStackGuardBase (MachineBasicBlock::iterator MI, unsigned LoadImmOpc, unsigned LoadOpc) const |
| bool | getRegSequenceLikeInputs (const MachineInstr &MI, unsigned DefIdx, SmallVectorImpl< RegSubRegPairAndIdx > &InputRegs) const override |
Build the equivalent inputs of a REG_SEQUENCE for the given MI and DefIdx. More... | |
| bool | getExtractSubregLikeInputs (const MachineInstr &MI, unsigned DefIdx, RegSubRegPairAndIdx &InputReg) const override |
Build the equivalent inputs of a EXTRACT_SUBREG for the given MI and DefIdx. More... | |
| bool | getInsertSubregLikeInputs (const MachineInstr &MI, unsigned DefIdx, RegSubRegPair &BaseReg, RegSubRegPairAndIdx &InsertedReg) const override |
Build the equivalent inputs of a INSERT_SUBREG for the given MI and DefIdx. More... | |
| MachineInstr * | commuteInstructionImpl (MachineInstr &MI, bool NewMI, unsigned OpIdx1, unsigned OpIdx2) const override |
| Commutes the operands in the given instruction. More... | |
Definition at line 24 of file Thumb2InstrInfo.h.
|
explicit |
Definition at line 32 of file Thumb2InstrInfo.cpp.
|
override |
Definition at line 112 of file Thumb2InstrInfo.cpp.
References llvm::AddDefaultPred(), llvm::BuildMI(), contains(), llvm::ARMBaseInstrInfo::copyPhysReg(), and llvm::getKillRegState().
|
override |
getNoopForMachoTarget - Return the noop instruction to use for a noop.
Definition at line 36 of file Thumb2InstrInfo.cpp.
References llvm::MCInst::addOperand(), llvm::ARMCC::AL, llvm::MCOperand::createImm(), llvm::MCOperand::createReg(), and llvm::MCInst::setOpcode().
|
inlineoverridevirtual |
getRegisterInfo - TargetInstrInfo is a superset of MRegister info.
As such, whenever a client has an instance of instruction info, it should always be able to get register info as well (through this method).
Implements llvm::ARMBaseInstrInfo.
Definition at line 62 of file Thumb2InstrInfo.h.
Implements llvm::ARMBaseInstrInfo.
Definition at line 43 of file Thumb2InstrInfo.cpp.
|
override |
Definition at line 100 of file Thumb2InstrInfo.cpp.
References llvm::ARMCC::AL, llvm::MachineBasicBlock::end(), and llvm::getITInstrPredicate().
|
override |
Definition at line 168 of file Thumb2InstrInfo.cpp.
References llvm::AddDefaultPred(), llvm::ARMBaseInstrInfo::AddDReg(), llvm::MachineInstrBuilder::addFrameIndex(), llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addMemOperand(), llvm::MachineInstrBuilder::addReg(), llvm::BuildMI(), llvm::MachineRegisterInfo::constrainRegClass(), llvm::RegState::DefineNoRead, llvm::MachineBasicBlock::end(), llvm::MachinePointerInfo::getFixedStack(), llvm::MachineFunction::getFrameInfo(), llvm::MachineFunction::getMachineMemOperand(), llvm::MachineFrameInfo::getObjectAlignment(), llvm::MachineFrameInfo::getObjectSize(), llvm::MachineBasicBlock::getParent(), llvm::MachineFunction::getRegInfo(), llvm::RegState::ImplicitDefine, llvm::TargetRegisterInfo::isPhysicalRegister(), llvm::TargetRegisterInfo::isVirtualRegister(), llvm::ARMBaseInstrInfo::loadRegFromStackSlot(), llvm::MachineMemOperand::MOLoad, and MRI.
|
override |
Definition at line 49 of file Thumb2InstrInfo.cpp.
References llvm::ARMCC::AL, llvm::MachineBasicBlock::begin(), E, llvm::MachineFunction::getInfo(), llvm::getInstrPredicate(), llvm::MachineBasicBlock::getParent(), llvm::ARMFunctionInfo::hasITBlocks(), llvm::BitmaskEnumDetail::Mask(), MBB, and llvm::TargetInstrInfo::ReplaceTailWithBranchTo().
|
override |
Definition at line 125 of file Thumb2InstrInfo.cpp.
References llvm::AddDefaultPred(), llvm::ARMBaseInstrInfo::AddDReg(), llvm::MachineInstrBuilder::addFrameIndex(), llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addMemOperand(), llvm::BuildMI(), llvm::MachineRegisterInfo::constrainRegClass(), llvm::MachineBasicBlock::end(), llvm::MachinePointerInfo::getFixedStack(), llvm::MachineFunction::getFrameInfo(), llvm::getKillRegState(), llvm::MachineFunction::getMachineMemOperand(), llvm::MachineFrameInfo::getObjectAlignment(), llvm::MachineFrameInfo::getObjectSize(), llvm::MachineBasicBlock::getParent(), llvm::MachineFunction::getRegInfo(), llvm::TargetRegisterInfo::isVirtualRegister(), llvm::MachineMemOperand::MOStore, MRI, and llvm::ARMBaseInstrInfo::storeRegToStackSlot().
1.8.6