LLVM
8.0.1
|
#include "Target/Lanai/LanaiInstrInfo.h"
Definition at line 26 of file LanaiInstrInfo.h.
LanaiInstrInfo::LanaiInstrInfo | ( | ) |
Definition at line 31 of file LanaiInstrInfo.cpp.
|
override |
Definition at line 563 of file LanaiInstrInfo.cpp.
References llvm::MachineBasicBlock::begin(), llvm::SmallVectorImpl< T >::clear(), llvm::MachineOperand::CreateImm(), llvm::SmallVectorBase::empty(), llvm::MachineBasicBlock::end(), llvm::MachineBasicBlock::isLayoutSuccessor(), and llvm::SmallVectorTemplateBase< T >::push_back().
Referenced by getRegisterInfo().
|
override |
Definition at line 178 of file LanaiInstrInfo.cpp.
References llvm::MachineOperand::getImm(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), and llvm::MachineOperand::getReg().
Referenced by getRegisterInfo().
|
override |
Definition at line 439 of file LanaiInstrInfo.cpp.
References assert(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), llvm::SmallVectorTemplateBase< T >::push_back(), and llvm::ISD::SELECT.
Referenced by getRegisterInfo().
|
override |
Definition at line 89 of file LanaiInstrInfo.cpp.
References assert(), getMemOperandWithOffsetWidth(), getRegisterInfo(), llvm::MachineInstr::hasOrderedMemoryRef(), llvm::MachineInstr::hasUnmodeledSideEffects(), llvm::MachineOperand::isIdenticalTo(), llvm::max(), llvm::MachineInstr::mayLoadOrStore(), and TRI.
Referenced by getRegisterInfo().
|
override |
Definition at line 35 of file LanaiInstrInfo.cpp.
References llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addReg(), llvm::BuildMI(), contains(), llvm::getKillRegState(), and llvm_unreachable.
Referenced by getRegisterInfo().
|
override |
Definition at line 164 of file LanaiInstrInfo.cpp.
Referenced by getRegisterInfo().
|
override |
Definition at line 120 of file LanaiInstrInfo.cpp.
Referenced by getRegisterInfo().
|
override |
Definition at line 797 of file LanaiInstrInfo.cpp.
References getMemOperandWithOffsetWidth(), and llvm::MachineInstr::getOpcode().
Referenced by getRegisterInfo().
bool LanaiInstrInfo::getMemOperandWithOffsetWidth | ( | MachineInstr & | LdSt, |
MachineOperand *& | BaseOp, | ||
int64_t & | Offset, | ||
unsigned & | Width, | ||
const TargetRegisterInfo * | TRI | ||
) | const |
Definition at line 758 of file LanaiInstrInfo.cpp.
References llvm::LPAC::ADD, assert(), llvm::MachineOperand::getImm(), llvm::MachineInstr::getNumOperands(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), llvm::MachineOperand::isImm(), and llvm::MachineOperand::isReg().
Referenced by areMemAccessesTriviallyDisjoint(), getMemOperandWithOffset(), and getRegisterInfo().
|
inlinevirtual |
Definition at line 35 of file LanaiInstrInfo.h.
References analyzeBranch(), analyzeCompare(), analyzeSelect(), areMemAccessesTriviallyDisjoint(), copyPhysReg(), decomposeMachineOperandsTargetFlags(), expandPostRAPseudo(), llvm::ISD::FrameIndex, getMemOperandWithOffset(), getMemOperandWithOffsetWidth(), getSerializableDirectMachineOperandTargetFlags(), insertBranch(), isLoadFromStackSlot(), isLoadFromStackSlotPostFE(), isStoreToStackSlot(), loadRegFromStackSlot(), MI, MRI, optimizeCompareInstr(), optimizeSelect(), removeBranch(), reverseBranchCondition(), storeRegToStackSlot(), and TRI.
Referenced by areMemAccessesTriviallyDisjoint(), llvm::LanaiSubtarget::getRegisterInfo(), and optimizeCompareInstr().
|
override |
Definition at line 169 of file LanaiInstrInfo.cpp.
References llvm::makeArrayRef(), llvm::LanaiII::MO_ABS_HI, llvm::LanaiII::MO_ABS_LO, and llvm::AArch64II::MO_NO_FLAG.
Referenced by getRegisterInfo().
|
override |
Definition at line 661 of file LanaiInstrInfo.cpp.
References llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addMBB(), assert(), llvm::BuildMI(), llvm::ArrayRef< T >::empty(), and llvm::ArrayRef< T >::size().
Referenced by getRegisterInfo().
|
override |
Definition at line 718 of file LanaiInstrInfo.cpp.
References llvm::MachineOperand::getImm(), llvm::MachineOperand::getIndex(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), llvm::MachineOperand::getReg(), llvm::MachineOperand::isFI(), and llvm::MachineOperand::isImm().
Referenced by getRegisterInfo(), and isLoadFromStackSlotPostFE().
|
override |
Definition at line 729 of file LanaiInstrInfo.cpp.
References llvm::SmallVectorTemplateCommon< T >::front(), llvm::MachineInstr::getOpcode(), llvm::MachineMemOperand::getPseudoValue(), isLoadFromStackSlot(), and Reg.
Referenced by getRegisterInfo().
|
override |
Definition at line 747 of file LanaiInstrInfo.cpp.
References llvm::MachineOperand::getImm(), llvm::MachineOperand::getIndex(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), llvm::MachineOperand::getReg(), llvm::MachineOperand::isFI(), and llvm::MachineOperand::isImm().
Referenced by getRegisterInfo().
|
override |
Definition at line 70 of file LanaiInstrInfo.cpp.
References llvm::LPAC::ADD, llvm::MachineInstrBuilder::addFrameIndex(), llvm::MachineInstrBuilder::addImm(), llvm::BuildMI(), llvm::MachineBasicBlock::end(), and llvm_unreachable.
Referenced by getRegisterInfo().
|
override |
Definition at line 284 of file LanaiInstrInfo.cpp.
References llvm::MachineInstr::addRegisterDefined(), B, llvm::MachineBasicBlock::begin(), llvm::MachineOperand::clobbersPhysReg(), E, llvm::MachineBasicBlock::end(), llvm::MachineInstr::eraseFromParent(), flagSettingOpcodeVariant(), llvm::MachineOperand::getImm(), llvm::MachineInstr::getNumOperands(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), getOppositeCondition(), llvm::MachineInstr::getParent(), llvm::MachineOperand::getReg(), getRegisterInfo(), llvm::MachineRegisterInfo::getUniqueVRegDef(), I, llvm::LPCC::ICC_CC, llvm::LPCC::ICC_CS, llvm::LPCC::ICC_EQ, llvm::LPCC::ICC_F, llvm::LPCC::ICC_GE, llvm::LPCC::ICC_GT, llvm::LPCC::ICC_HI, llvm::LPCC::ICC_LE, llvm::LPCC::ICC_LS, llvm::LPCC::ICC_LT, llvm::LPCC::ICC_MI, llvm::LPCC::ICC_NE, llvm::LPCC::ICC_PL, llvm::LPCC::ICC_T, llvm::LPCC::ICC_VC, llvm::LPCC::ICC_VS, llvm::MachineOperand::isDef(), isRedundantFlagInstr(), llvm::MachineOperand::isReg(), llvm::MachineOperand::isRegMask(), MI, llvm::MachineInstr::modifiesRegister(), llvm::SmallVectorTemplateBase< T >::push_back(), llvm::MachineInstr::readsRegister(), llvm::MachineInstr::setDesc(), SI, llvm::MachineBasicBlock::succ_begin(), llvm::MachineBasicBlock::succ_end(), TRI, and llvm::LPCC::UNKNOWN.
Referenced by getRegisterInfo().
|
override |
Definition at line 494 of file LanaiInstrInfo.cpp.
References llvm::MachineInstrBuilder::add(), llvm::MachineInstrBuilder::addImm(), assert(), llvm::BuildMI(), canFoldIntoSelect(), llvm::MachineInstr::clearKillInfo(), llvm::MachineInstrBuilder::copyImplicitOps(), DefMI, llvm::SmallPtrSetImpl< PtrType >::erase(), llvm::MachineInstr::eraseFromParent(), llvm::MachineInstr::getDebugLoc(), llvm::MachineInstr::getDesc(), llvm::MachineOperand::getImm(), llvm::MachineInstr::getNumOperands(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), getOppositeCondition(), llvm::MachineBasicBlock::getParent(), llvm::MachineInstr::getParent(), llvm::MachineOperand::getReg(), llvm::MachineFunction::getRegInfo(), llvm::SmallPtrSetImpl< PtrType >::insert(), MI, MRI, llvm::ISD::SELECT, llvm::MachineOperand::setImplicit(), and llvm::MachineInstr::tieOperands().
Referenced by getRegisterInfo().
|
override |
Definition at line 693 of file LanaiInstrInfo.cpp.
References assert(), llvm::MachineBasicBlock::begin(), and llvm::MachineBasicBlock::end().
Referenced by getRegisterInfo().
|
override |
Definition at line 647 of file LanaiInstrInfo.cpp.
References assert(), getOppositeCondition(), and llvm::SmallVectorBase::size().
Referenced by getRegisterInfo().
|
override |
Definition at line 50 of file LanaiInstrInfo.cpp.
References llvm::LPAC::ADD, llvm::MachineInstrBuilder::addFrameIndex(), llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addReg(), llvm::BuildMI(), llvm::MachineBasicBlock::end(), llvm::getKillRegState(), and llvm_unreachable.
Referenced by getRegisterInfo().