|
LLVM
4.0.0
|
#include <MachineInstrBuilder.h>
Definition at line 47 of file MachineInstrBuilder.h.
|
inline |
Definition at line 51 of file MachineInstrBuilder.h.
|
inline |
Create a MachineInstrBuilder for manipulating an existing instruction.
F must be the machine function that was used to allocate I.
Definition at line 55 of file MachineInstrBuilder.h.
|
inline |
Definition at line 56 of file MachineInstrBuilder.h.
|
inline |
Definition at line 161 of file MachineInstrBuilder.h.
References llvm::MachineInstr::addOperand(), llvm::MachineOperand::CreateBA(), and Offset.
|
inline |
Definition at line 203 of file MachineInstrBuilder.h.
References llvm::MachineInstr::addOperand(), and llvm::MachineOperand::CreateCFIIndex().
|
inline |
Definition at line 107 of file MachineInstrBuilder.h.
References llvm::MachineInstr::addOperand(), and llvm::MachineOperand::CreateCImm().
Referenced by llvm::MachineIRBuilder::buildConstant(), llvm::InstrEmitter::EmitDbgValue(), and llvm::FastISel::selectIntrinsicCall().
|
inline |
Definition at line 128 of file MachineInstrBuilder.h.
References llvm::MachineInstr::addOperand(), llvm::MachineOperand::CreateCPI(), and Offset.
Referenced by llvm::addConstantPoolReference(), addDisp(), llvm::XCoreInstrInfo::loadImmediate(), and llvm::ARMBaseInstrInfo::reMaterialize().
|
inline |
Add a virtual register definition operand.
Definition at line 87 of file MachineInstrBuilder.h.
References addReg(), llvm::RegState::Define, fuzzer::Flags, and SubReg.
Referenced by llvm::MachineIRBuilder::buildAdd(), llvm::MachineIRBuilder::buildAnyExt(), llvm::MachineIRBuilder::buildConstant(), llvm::MachineIRBuilder::buildCopy(), llvm::MachineIRBuilder::buildFCmp(), llvm::MachineIRBuilder::buildFConstant(), llvm::MachineIRBuilder::buildFPTrunc(), llvm::MachineIRBuilder::buildFrameIndex(), llvm::MachineIRBuilder::buildGEP(), llvm::MachineIRBuilder::buildGlobalValue(), llvm::MachineIRBuilder::buildICmp(), llvm::MachineIRBuilder::buildInsert(), llvm::MachineIRBuilder::buildLoad(), llvm::MachineIRBuilder::buildMul(), llvm::MachineIRBuilder::buildSelect(), llvm::MachineIRBuilder::buildSequence(), llvm::MachineIRBuilder::buildSExt(), llvm::MachineIRBuilder::buildSExtOrTrunc(), llvm::MachineIRBuilder::buildSub(), llvm::MachineIRBuilder::buildTrunc(), llvm::MachineIRBuilder::buildUAdde(), llvm::MachineIRBuilder::buildZExt(), and llvm::LegalizerHelper::widenScalar().
|
inline |
Definition at line 235 of file MachineInstrBuilder.h.
References addConstantPoolIndex(), addGlobalAddress(), addImm(), llvm::MachineOperand::getGlobal(), llvm::MachineOperand::getImm(), llvm::MachineOperand::getIndex(), llvm::MachineOperand::getOffset(), llvm::MachineOperand::getTargetFlags(), llvm::MachineOperand::getType(), llvm_unreachable, llvm::MachineOperand::MO_ConstantPoolIndex, llvm::MachineOperand::MO_GlobalAddress, and llvm::MachineOperand::MO_Immediate.
Referenced by addOperands().
|
inline |
Definition at line 155 of file MachineInstrBuilder.h.
References llvm::MachineInstr::addOperand(), and llvm::MachineOperand::CreateES().
Referenced by llvm::ARMFrameLowering::adjustForSegmentedStacks(), llvm::X86FrameLowering::adjustForSegmentedStacks(), emitGPDisp(), llvm::SIFrameLowering::emitPrologue(), llvm::ARMFrameLowering::emitPrologue(), llvm::WebAssemblyFrameLowering::emitPrologue(), and writeSPToMemory().
|
inline |
Definition at line 112 of file MachineInstrBuilder.h.
References llvm::MachineInstr::addOperand(), and llvm::MachineOperand::CreateFPImm().
Referenced by llvm::MachineIRBuilder::buildFConstant(), llvm::InstrEmitter::EmitDbgValue(), llvm::FastISel::fastEmitInst_f(), and llvm::FastISel::selectIntrinsicCall().
|
inline |
Definition at line 123 of file MachineInstrBuilder.h.
References llvm::MachineInstr::addOperand(), and llvm::MachineOperand::CreateFI().
Referenced by llvm::addFrameReference(), llvm::addFullAddress(), llvm::MachineIRBuilder::buildFrameIndex(), llvm::AArch64InstrInfo::emitFrameIndexDebugValue(), llvm::SystemZInstrInfo::foldMemoryOperandImpl(), foldPatchpoint(), llvm::Mips16InstrInfo::loadRegFromStack(), llvm::MipsSEInstrInfo::loadRegFromStack(), llvm::BPFInstrInfo::loadRegFromStackSlot(), llvm::Thumb2InstrInfo::loadRegFromStackSlot(), llvm::LanaiInstrInfo::loadRegFromStackSlot(), llvm::MSP430InstrInfo::loadRegFromStackSlot(), llvm::XCoreInstrInfo::loadRegFromStackSlot(), llvm::AVRInstrInfo::loadRegFromStackSlot(), llvm::SparcInstrInfo::loadRegFromStackSlot(), llvm::SIInstrInfo::loadRegFromStackSlot(), llvm::AArch64InstrInfo::loadRegFromStackSlot(), llvm::HexagonInstrInfo::loadRegFromStackSlot(), llvm::ARMBaseInstrInfo::loadRegFromStackSlot(), llvm::AArch64RegisterInfo::materializeFrameBaseRegister(), llvm::PPCRegisterInfo::materializeFrameBaseRegister(), llvm::ARMBaseRegisterInfo::materializeFrameBaseRegister(), llvm::SIRegisterInfo::spillSGPR(), llvm::MipsSEInstrInfo::storeRegToStack(), llvm::BPFInstrInfo::storeRegToStackSlot(), llvm::Thumb2InstrInfo::storeRegToStackSlot(), llvm::LanaiInstrInfo::storeRegToStackSlot(), llvm::MSP430InstrInfo::storeRegToStackSlot(), llvm::XCoreInstrInfo::storeRegToStackSlot(), llvm::AVRInstrInfo::storeRegToStackSlot(), llvm::SparcInstrInfo::storeRegToStackSlot(), llvm::SIInstrInfo::storeRegToStackSlot(), llvm::AArch64InstrInfo::storeRegToStackSlot(), llvm::HexagonInstrInfo::storeRegToStackSlot(), and llvm::ARMBaseInstrInfo::storeRegToStackSlot().
|
inline |
Definition at line 148 of file MachineInstrBuilder.h.
References llvm::MachineInstr::addOperand(), llvm::MachineOperand::CreateGA(), and Offset.
Referenced by addDisp(), llvm::addFullAddress(), llvm::MachineIRBuilder::buildGlobalValue(), expandLoadStackGuard(), llvm::ARMBaseInstrInfo::expandLoadStackGuardBase(), llvm::AArch64InstrInfo::expandPostRAPseudo(), and llvm::AArch64InstructionSelector::select().
|
inline |
Add a new immediate operand.
Definition at line 102 of file MachineInstrBuilder.h.
References llvm::MachineInstr::addOperand(), and llvm::MachineOperand::CreateImm().
Referenced by addAsmInstr(), llvm::addConstantPoolReference(), llvm::AddDefaultPred(), llvm::addDirectMem(), addDisp(), llvm::addFrameReference(), llvm::addFullAddress(), llvm::addOffset(), llvm::addRegReg(), llvm::MachineIRBuilder::addUsesWithIndices(), llvm::ARMFrameLowering::adjustForSegmentedStacks(), llvm::X86FrameLowering::adjustForSegmentedStacks(), llvm::MipsSEInstrInfo::adjustStackPtr(), llvm::ARMBaseInstrInfo::breakPartialRegDependency(), llvm::Mips16InstrInfo::BuildAddiuSpImm(), llvm::R600InstrInfo::buildDefaultInstruction(), llvm::BuildMI(), llvm::SIInstrInfo::calculateLDSSpillAddress(), convertCalleeSaveRestoreToSPPrePostIncDec(), llvm::ARMBaseInstrInfo::convertToThreeAddress(), llvm::SIInstrInfo::convertToThreeAddress(), llvm::SystemZInstrInfo::convertToThreeAddress(), llvm::X86InstrInfo::convertToThreeAddress(), llvm::ARMBaseInstrInfo::copyFromCPSR(), llvm::MipsSEInstrInfo::copyPhysReg(), llvm::LanaiInstrInfo::copyPhysReg(), llvm::XCoreInstrInfo::copyPhysReg(), llvm::SIInstrInfo::copyPhysReg(), llvm::AArch64InstrInfo::copyPhysReg(), llvm::PPCInstrInfo::copyPhysReg(), llvm::X86InstrInfo::copyPhysReg(), llvm::ARMBaseInstrInfo::copyToCPSR(), llvm::MSP430FrameLowering::eliminateCallFramePseudoInstr(), llvm::AVRFrameLowering::eliminateCallFramePseudoInstr(), llvm::PPCFrameLowering::eliminateCallFramePseudoInstr(), llvm::BPFRegisterInfo::eliminateFrameIndex(), llvm::MSP430RegisterInfo::eliminateFrameIndex(), llvm::SparcRegisterInfo::eliminateFrameIndex(), llvm::LanaiRegisterInfo::eliminateFrameIndex(), llvm::AVRRegisterInfo::eliminateFrameIndex(), llvm::HexagonRegisterInfo::eliminateFrameIndex(), llvm::SystemZRegisterInfo::eliminateFrameIndex(), llvm::PPCRegisterInfo::eliminateFrameIndex(), emitAlignedDPRCS2Restores(), emitAlignedDPRCS2Spills(), emitAligningInstructions(), llvm::emitARMRegPlusImmediate(), llvm::InstrEmitter::EmitDbgValue(), llvm::SparcTargetLowering::emitEHSjLjLongJmp(), llvm::SparcTargetLowering::emitEHSjLjSetJmp(), llvm::PPCTargetLowering::emitEHSjLjSetJmp(), llvm::AVRFrameLowering::emitEpilogue(), llvm::MSP430FrameLowering::emitEpilogue(), llvm::ARMFrameLowering::emitEpilogue(), llvm::LanaiFrameLowering::emitEpilogue(), llvm::X86FrameLowering::emitEpilogue(), llvm::PPCFrameLowering::emitEpilogue(), llvm::AArch64InstrInfo::emitFrameIndexDebugValue(), llvm::emitFrameOffset(), emitIncrement(), emitIndirectDst(), emitIndirectSrc(), llvm::MSP430TargetLowering::EmitInstrWithCustomInserter(), llvm::SITargetLowering::EmitInstrWithCustomInserter(), llvm::ARMTargetLowering::EmitInstrWithCustomInserter(), llvm::PPCTargetLowering::EmitInstrWithCustomInserter(), llvm::X86TargetLowering::EmitInstrWithCustomInserter(), llvm::ARMBaseRegisterInfo::emitLoadConstPool(), emitLoadM0FromVGPRLoop(), llvm::PPCTargetLowering::EmitPartwordAtomicBinary(), llvm::TargetLoweringBase::emitPatchPoint(), emitPostLd(), emitPostSt(), llvm::AVRFrameLowering::emitPrologue(), llvm::MipsSEFrameLowering::emitPrologue(), llvm::SparcFrameLowering::emitPrologue(), llvm::SIFrameLowering::emitPrologue(), llvm::Thumb1FrameLowering::emitPrologue(), llvm::XCoreFrameLowering::emitPrologue(), llvm::MSP430FrameLowering::emitPrologue(), llvm::ARMFrameLowering::emitPrologue(), llvm::AArch64FrameLowering::emitPrologue(), llvm::LanaiFrameLowering::emitPrologue(), llvm::SystemZFrameLowering::emitPrologue(), llvm::X86FrameLowering::emitPrologue(), llvm::PPCFrameLowering::emitPrologue(), llvm::MSP430TargetLowering::EmitShiftInstr(), llvm::emitT2RegPlusImmediate(), emitThumb1LoadConstPool(), emitThumb2LoadConstPool(), llvm::emitThumbRegPlusImmediate(), emitThumbRegPlusImmInReg(), expandLoadStackGuard(), expandNOVLXStore(), llvm::SparcInstrInfo::expandPostRAPseudo(), llvm::SIInstrInfo::expandPostRAPseudo(), llvm::AArch64InstrInfo::expandPostRAPseudo(), llvm::X86InstrInfo::expandPostRAPseudo(), llvm::SparcTargetLowering::expandSelectCC(), llvm::FastISel::fastEmitInst_i(), llvm::FastISel::fastEmitInst_ri(), llvm::FastISel::fastEmitInst_rii(), llvm::FastISel::fastEmitInst_rri(), llvm::ARMBaseInstrInfo::FoldImmediate(), llvm::SystemZInstrInfo::foldMemoryOperandImpl(), foldPatchpoint(), llvm::AArch64InstrInfo::genAlternativeCodeSequence(), llvm::MipsInstrInfo::genInstrWithNewOpc(), HandleVRSaveUpdate(), INITIALIZE_PASS(), llvm::SparcInstrInfo::insertBranch(), llvm::MSP430InstrInfo::insertBranch(), llvm::ARMBaseInstrInfo::insertBranch(), llvm::LanaiInstrInfo::insertBranch(), llvm::PPCInstrInfo::insertBranch(), llvm::SystemZInstrInfo::insertBranch(), insertDivByZeroTrap(), InsertFPImmInst(), llvm::SIInstrInfo::insertIndirectBranch(), InsertLDR_STR(), llvm::AArch64InstrInfo::insertSelect(), llvm::SystemZInstrInfo::insertSelect(), InsertSPImmInst(), llvm::SIInstrInfo::insertWaitStates(), llvm::SIInstrInfo::legalizeOperands(), llvm::MipsSEInstrInfo::loadImmediate(), llvm::Mips16InstrInfo::loadImmediate(), llvm::XCoreInstrInfo::loadImmediate(), llvm::SystemZInstrInfo::loadImmediate(), llvm::MipsSEInstrInfo::loadRegFromStack(), llvm::Mips16InstrInfo::loadRegFromStack(), llvm::BPFInstrInfo::loadRegFromStackSlot(), llvm::Thumb2InstrInfo::loadRegFromStackSlot(), llvm::LanaiInstrInfo::loadRegFromStackSlot(), llvm::MSP430InstrInfo::loadRegFromStackSlot(), llvm::XCoreInstrInfo::loadRegFromStackSlot(), llvm::AVRInstrInfo::loadRegFromStackSlot(), llvm::SparcInstrInfo::loadRegFromStackSlot(), llvm::AArch64InstrInfo::loadRegFromStackSlot(), llvm::HexagonInstrInfo::loadRegFromStackSlot(), llvm::ARMBaseInstrInfo::loadRegFromStackSlot(), llvm::PPCRegisterInfo::lowerCRBitRestore(), llvm::PPCRegisterInfo::lowerCRBitSpilling(), llvm::PPCRegisterInfo::lowerCRRestore(), llvm::PPCRegisterInfo::lowerCRSpilling(), llvm::PPCRegisterInfo::lowerDynamicAlloc(), llvm::X86CallLowering::lowerReturn(), llvm::Mips16InstrInfo::makeFrame(), MakeM0Inst(), llvm::AArch64RegisterInfo::materializeFrameBaseRegister(), llvm::PPCRegisterInfo::materializeFrameBaseRegister(), llvm::ARMBaseRegisterInfo::materializeFrameBaseRegister(), llvm::AArch64InstrInfo::optimizeCondBranch(), llvm::LanaiInstrInfo::optimizeSelect(), llvm::ARMBaseInstrInfo::optimizeSelect(), llvm::SystemZInstrInfo::PredicateInstruction(), llvm::X86FrameLowering::processFunctionBeforeFrameFinalized(), llvm::SIInstrInfo::readlaneVGPRToSGPR(), llvm::HexagonInstrInfo::reduceLoopCount(), llvm::ARMBaseInstrInfo::reMaterialize(), replaceFI(), llvm::SystemZFrameLowering::restoreCalleeSavedRegisters(), llvm::AArch64FrameLowering::restoreCalleeSavedRegisters(), llvm::Mips16InstrInfo::restoreFrame(), llvm::SIRegisterInfo::restoreSGPR(), llvm::X86FrameLowering::restoreWin32EHStackPointers(), llvm::AArch64InstructionSelector::select(), llvm::FastISel::selectIntrinsicCall(), llvm::FastISel::selectStackmap(), llvm::ARMBaseInstrInfo::setExecutionDomain(), setM0ToIndexFromSGPR(), llvm::SystemZFrameLowering::spillCalleeSavedRegisters(), llvm::SIRegisterInfo::spillSGPR(), llvm::MipsSEInstrInfo::storeRegToStack(), llvm::Mips16InstrInfo::storeRegToStack(), llvm::BPFInstrInfo::storeRegToStackSlot(), llvm::Thumb2InstrInfo::storeRegToStackSlot(), llvm::LanaiInstrInfo::storeRegToStackSlot(), llvm::MSP430InstrInfo::storeRegToStackSlot(), llvm::XCoreInstrInfo::storeRegToStackSlot(), llvm::AVRInstrInfo::storeRegToStackSlot(), llvm::SparcInstrInfo::storeRegToStackSlot(), llvm::AArch64InstrInfo::storeRegToStackSlot(), llvm::HexagonInstrInfo::storeRegToStackSlot(), llvm::ARMBaseInstrInfo::storeRegToStackSlot(), tryOrrMovk(), trySequenceOfOnes(), and tryToreplicateChunks().
|
inline |
Definition at line 208 of file MachineInstrBuilder.h.
References llvm::MachineInstr::addOperand(), and llvm::MachineOperand::CreateIntrinsicID().
|
inline |
Definition at line 142 of file MachineInstrBuilder.h.
References llvm::MachineInstr::addOperand(), and llvm::MachineOperand::CreateJTI().
|
inline |
Definition at line 117 of file MachineInstrBuilder.h.
References llvm::MachineInstr::addOperand(), and llvm::MachineOperand::CreateMBB().
Referenced by llvm::SSAUpdaterTraits< MachineSSAUpdater >::AddPHIOperand(), llvm::AVRInstrInfo::analyzeBranch(), llvm::MachineIRBuilder::buildBr(), llvm::MachineIRBuilder::buildBrCond(), llvm::PPCTargetLowering::EmitAtomicBinary(), llvm::SparcTargetLowering::emitEHSjLjSetJmp(), llvm::PPCTargetLowering::emitEHSjLjSetJmp(), llvm::X86FrameLowering::emitEpilogue(), llvm::AArch64TargetLowering::EmitF128CSEL(), llvm::BPFTargetLowering::EmitInstrWithCustomInserter(), llvm::ARMTargetLowering::EmitInstrWithCustomInserter(), llvm::PPCTargetLowering::EmitInstrWithCustomInserter(), emitLoadM0FromVGPRLoop(), llvm::PPCTargetLowering::EmitPartwordAtomicBinary(), llvm::MSP430TargetLowering::EmitShiftInstr(), llvm::MachineSSAUpdater::GetValueInMiddleOfBlock(), llvm::WebAssemblyInstrInfo::insertBranch(), llvm::BPFInstrInfo::insertBranch(), llvm::XCoreInstrInfo::insertBranch(), llvm::MipsInstrInfo::insertBranch(), llvm::NVPTXInstrInfo::insertBranch(), llvm::SparcInstrInfo::insertBranch(), llvm::MSP430InstrInfo::insertBranch(), llvm::AVRInstrInfo::insertBranch(), llvm::HexagonInstrInfo::insertBranch(), llvm::ARMBaseInstrInfo::insertBranch(), llvm::LanaiInstrInfo::insertBranch(), llvm::R600InstrInfo::insertBranch(), llvm::PPCInstrInfo::insertBranch(), llvm::SystemZInstrInfo::insertBranch(), llvm::AArch64InstrInfo::insertBranch(), llvm::SIInstrInfo::insertBranch(), llvm::X86InstrInfo::insertBranch(), llvm::SIInstrInfo::insertIndirectBranch(), insertPHI(), llvm::AArch64InstrInfo::optimizeCondBranch(), propagateSwiftErrorVRegs(), and llvm::AArch64InstructionSelector::select().
|
inline |
Definition at line 173 of file MachineInstrBuilder.h.
References llvm::MachineInstr::addMemOperand().
Referenced by llvm::addFrameReference(), llvm::MachineIRBuilder::buildLoad(), llvm::MachineIRBuilder::buildStore(), llvm::SIFrameLowering::emitPrologue(), llvm::XCoreFrameLowering::emitPrologue(), llvm::WebAssemblyFrameLowering::emitPrologue(), llvm::X86FrameLowering::emitPrologue(), expandLoadStackGuard(), llvm::AArch64InstrInfo::expandPostRAPseudo(), llvm::SystemZInstrInfo::foldMemoryOperandImpl(), InsertFPConstInst(), InsertFPImmInst(), InsertSPConstInst(), InsertSPImmInst(), llvm::MipsSEInstrInfo::loadRegFromStack(), llvm::Mips16InstrInfo::loadRegFromStack(), llvm::Thumb2InstrInfo::loadRegFromStackSlot(), llvm::MSP430InstrInfo::loadRegFromStackSlot(), llvm::XCoreInstrInfo::loadRegFromStackSlot(), llvm::AVRInstrInfo::loadRegFromStackSlot(), llvm::SparcInstrInfo::loadRegFromStackSlot(), llvm::SIInstrInfo::loadRegFromStackSlot(), llvm::AArch64InstrInfo::loadRegFromStackSlot(), llvm::HexagonInstrInfo::loadRegFromStackSlot(), llvm::ARMBaseInstrInfo::loadRegFromStackSlot(), llvm::AArch64FrameLowering::restoreCalleeSavedRegisters(), llvm::SIRegisterInfo::restoreSGPR(), RestoreSpillList(), llvm::SIRegisterInfo::spillSGPR(), llvm::Mips16InstrInfo::storeRegToStack(), llvm::MipsSEInstrInfo::storeRegToStack(), llvm::Thumb2InstrInfo::storeRegToStackSlot(), llvm::MSP430InstrInfo::storeRegToStackSlot(), llvm::XCoreInstrInfo::storeRegToStackSlot(), llvm::AVRInstrInfo::storeRegToStackSlot(), llvm::SparcInstrInfo::storeRegToStackSlot(), llvm::SIInstrInfo::storeRegToStackSlot(), llvm::AArch64InstrInfo::storeRegToStackSlot(), llvm::HexagonInstrInfo::storeRegToStackSlot(), llvm::ARMBaseInstrInfo::storeRegToStackSlot(), and writeSPToMemory().
|
inline |
Definition at line 195 of file MachineInstrBuilder.h.
References llvm::MachineInstr::addOperand(), assert(), llvm::MachineOperand::CreateMetadata(), llvm::MachineInstr::getDebugVariable(), and llvm::MachineInstr::isDebugValue().
Referenced by llvm::BuildMI(), llvm::InstrEmitter::EmitDbgValue(), and llvm::AArch64InstrInfo::emitFrameIndexDebugValue().
|
inline |
Definition at line 190 of file MachineInstrBuilder.h.
References llvm::MachineInstr::addOperand().
Referenced by llvm::addOffset(), addOperands(), llvm::X86InstrInfo::classifyLEAReg(), CombineCVTAToLocal(), convertCalleeSaveRestoreToSPPrePostIncDec(), llvm::SIInstrInfo::convertToThreeAddress(), llvm::SystemZInstrInfo::convertToThreeAddress(), llvm::X86InstrInfo::convertToThreeAddress(), emitIndirectDst(), llvm::R600TargetLowering::EmitInstrWithCustomInserter(), llvm::ARMTargetLowering::EmitInstrWithCustomInserter(), emitMonitor(), llvm::TargetLoweringBase::emitPatchPoint(), emitPCMPSTRI(), emitPCMPSTRM(), llvm::SIInstrInfo::expandPostRAPseudo(), llvm::HexagonInstrInfo::expandPostRAPseudo(), llvm::SystemZInstrInfo::foldMemoryOperandImpl(), foldPatchpoint(), FuseInst(), FuseTwoAddrInst(), llvm::AArch64InstrInfo::genAlternativeCodeSequence(), llvm::MipsInstrInfo::genInstrWithNewOpc(), llvm::WebAssemblyInstrInfo::insertBranch(), llvm::ARMBaseInstrInfo::insertBranch(), llvm::PPCInstrInfo::insertBranch(), llvm::SIInstrInfo::legalizeGenericOperand(), llvm::SIInstrInfo::legalizeOperands(), llvm::SIInstrInfo::legalizeOpWithMove(), llvm::X86InstrInfo::loadRegFromAddr(), llvm::AArch64CallLowering::lowerCall(), llvm::LanaiInstrInfo::optimizeSelect(), llvm::ARMBaseInstrInfo::optimizeSelect(), llvm::SystemZInstrInfo::PredicateInstruction(), llvm::HexagonInstrInfo::PredicateInstruction(), llvm::X86InstrInfo::reMaterialize(), llvm::FastISel::selectPatchpoint(), llvm::FastISel::selectStackmap(), llvm::X86InstrInfo::storeRegToAddr(), llvm::tryFoldSPUpdateIntoPushPop(), and llvm::X86InstrInfo::unfoldMemoryOperand().
|
inline |
Definition at line 213 of file MachineInstrBuilder.h.
References llvm::MachineInstr::addOperand(), and llvm::MachineOperand::CreatePredicate().
Referenced by llvm::MachineIRBuilder::buildFCmp(), and llvm::MachineIRBuilder::buildICmp().
|
inline |
Add a new virtual register operand.
Definition at line 69 of file MachineInstrBuilder.h.
References llvm::MachineInstr::addOperand(), assert(), llvm::MachineOperand::CreateReg(), llvm::RegState::Dead, llvm::RegState::Debug, llvm::RegState::Define, llvm::RegState::EarlyClobber, llvm::RegState::Implicit, llvm::RegState::InternalRead, llvm::RegState::Kill, SubReg, and llvm::RegState::Undef.
Referenced by llvm::addConstantPoolReference(), addDef(), llvm::AddDefaultCC(), llvm::AddDefaultPred(), llvm::AddDefaultT1CC(), llvm::addDirectMem(), llvm::ARMBaseInstrInfo::AddDReg(), addExclusiveRegPair(), llvm::addFrameReference(), llvm::addFullAddress(), llvm::AddNoT1CC(), llvm::addOffset(), llvm::addRegOffset(), llvm::addRegReg(), addSavedGPR(), addSaveRestoreRegs(), AddSubReg(), addUse(), llvm::ARMFrameLowering::adjustForSegmentedStacks(), llvm::X86FrameLowering::adjustForSegmentedStacks(), llvm::MipsSEInstrInfo::adjustStackPtr(), attachMEMCPYScratchRegs(), llvm::X86InstrInfo::breakPartialRegDependency(), llvm::R600InstrInfo::buildDefaultInstruction(), llvm::BuildMI(), llvm::SIInstrInfo::calculateLDSSpillAddress(), llvm::X86InstrInfo::classifyLEAReg(), llvm::X86InstrInfo::commuteInstructionImpl(), convertCalleeSaveRestoreToSPPrePostIncDec(), llvm::ARMBaseInstrInfo::convertToThreeAddress(), llvm::SystemZInstrInfo::convertToThreeAddress(), llvm::X86InstrInfo::convertToThreeAddress(), llvm::ARMBaseInstrInfo::copyFromCPSR(), llvm::BPFInstrInfo::copyPhysReg(), llvm::WebAssemblyInstrInfo::copyPhysReg(), llvm::Thumb1InstrInfo::copyPhysReg(), llvm::Mips16InstrInfo::copyPhysReg(), llvm::MipsSEInstrInfo::copyPhysReg(), llvm::LanaiInstrInfo::copyPhysReg(), llvm::NVPTXInstrInfo::copyPhysReg(), llvm::MSP430InstrInfo::copyPhysReg(), llvm::XCoreInstrInfo::copyPhysReg(), llvm::AVRInstrInfo::copyPhysReg(), llvm::SparcInstrInfo::copyPhysReg(), llvm::SIInstrInfo::copyPhysReg(), llvm::AArch64InstrInfo::copyPhysReg(), llvm::HexagonInstrInfo::copyPhysReg(), llvm::ARMBaseInstrInfo::copyPhysReg(), llvm::PPCInstrInfo::copyPhysReg(), llvm::SystemZInstrInfo::copyPhysReg(), llvm::X86InstrInfo::copyPhysReg(), llvm::ARMBaseInstrInfo::copyToCPSR(), llvm::PPCFrameLowering::eliminateCallFramePseudoInstr(), llvm::SparcRegisterInfo::eliminateFrameIndex(), llvm::WebAssemblyRegisterInfo::eliminateFrameIndex(), llvm::LanaiRegisterInfo::eliminateFrameIndex(), llvm::AVRRegisterInfo::eliminateFrameIndex(), llvm::SystemZRegisterInfo::eliminateFrameIndex(), emitAlignedDPRCS2Restores(), emitAlignedDPRCS2Spills(), llvm::emitARMRegPlusImmediate(), llvm::PPCTargetLowering::EmitAtomicBinary(), llvm::InstrEmitter::EmitDbgValue(), llvm::SparcTargetLowering::emitEHSjLjLongJmp(), llvm::PPCTargetLowering::emitEHSjLjLongJmp(), llvm::SparcTargetLowering::emitEHSjLjSetJmp(), llvm::PPCTargetLowering::emitEHSjLjSetJmp(), llvm::AVRFrameLowering::emitEpilogue(), llvm::MipsSEFrameLowering::emitEpilogue(), llvm::SparcFrameLowering::emitEpilogue(), llvm::ARMFrameLowering::emitEpilogue(), llvm::X86FrameLowering::emitEpilogue(), llvm::PPCFrameLowering::emitEpilogue(), llvm::AArch64TargetLowering::EmitF128CSEL(), emitIndirectDst(), emitIndirectSrc(), llvm::BPFTargetLowering::EmitInstrWithCustomInserter(), llvm::AVRTargetLowering::EmitInstrWithCustomInserter(), llvm::XCoreTargetLowering::EmitInstrWithCustomInserter(), llvm::MSP430TargetLowering::EmitInstrWithCustomInserter(), llvm::SITargetLowering::EmitInstrWithCustomInserter(), llvm::ARMTargetLowering::EmitInstrWithCustomInserter(), llvm::PPCTargetLowering::EmitInstrWithCustomInserter(), llvm::X86TargetLowering::EmitInstrWithCustomInserter(), llvm::ARMBaseRegisterInfo::emitLoadConstPool(), emitLoadM0FromVGPRLoop(), llvm::PPCTargetLowering::EmitPartwordAtomicBinary(), emitPostLd(), emitPostSt(), llvm::AVRFrameLowering::emitPrologue(), llvm::MipsSEFrameLowering::emitPrologue(), llvm::SIFrameLowering::emitPrologue(), llvm::ARMFrameLowering::emitPrologue(), llvm::WebAssemblyFrameLowering::emitPrologue(), llvm::LanaiFrameLowering::emitPrologue(), llvm::SystemZFrameLowering::emitPrologue(), llvm::X86FrameLowering::emitPrologue(), llvm::PPCFrameLowering::emitPrologue(), llvm::MSP430TargetLowering::EmitShiftInstr(), llvm::X86FrameLowering::emitSPUpdate(), llvm::emitT2RegPlusImmediate(), emitThumb1LoadConstPool(), emitThumb2LoadConstPool(), llvm::emitThumbRegPlusImmediate(), emitThumbRegPlusImmInReg(), Expand2AddrKreg(), Expand2AddrUndef(), expandLoadStackGuard(), expandMOV32r1(), llvm::SIInstrInfo::expandPostRAPseudo(), llvm::HexagonInstrInfo::expandPostRAPseudo(), llvm::AArch64InstrInfo::expandPostRAPseudo(), llvm::PPCInstrInfo::expandPostRAPseudo(), llvm::X86InstrInfo::expandPostRAPseudo(), llvm::SparcTargetLowering::expandSelectCC(), llvm::FastISel::fastEmitInst_r(), llvm::FastISel::fastEmitInst_ri(), llvm::FastISel::fastEmitInst_rii(), llvm::FastISel::fastEmitInst_rr(), llvm::FastISel::fastEmitInst_rri(), llvm::FastISel::fastEmitInst_rrr(), llvm::ARMBaseInstrInfo::FoldImmediate(), llvm::SystemZInstrInfo::foldMemoryOperandImpl(), llvm::MachineSSAUpdater::GetValueInMiddleOfBlock(), INITIALIZE_PASS(), llvm::XCoreInstrInfo::insertBranch(), llvm::NVPTXInstrInfo::insertBranch(), llvm::HexagonInstrInfo::insertBranch(), llvm::ARMBaseInstrInfo::insertBranch(), llvm::R600InstrInfo::insertBranch(), insertDivByZeroTrap(), InsertFPConstInst(), InsertFPImmInst(), llvm::SIInstrInfo::insertIndirectBranch(), InsertLDR_STR(), insertPHI(), llvm::PPCInstrInfo::insertSelect(), llvm::AArch64InstrInfo::insertSelect(), llvm::SystemZInstrInfo::insertSelect(), llvm::X86InstrInfo::insertSelect(), InsertSPConstInst(), llvm::SIInstrInfo::legalizeOperands(), llvm::MipsSEInstrInfo::loadImmediate(), llvm::Mips16InstrInfo::loadImmediate(), llvm::MipsSEInstrInfo::loadRegFromStack(), llvm::Thumb2InstrInfo::loadRegFromStackSlot(), llvm::MSP430InstrInfo::loadRegFromStackSlot(), llvm::SIInstrInfo::loadRegFromStackSlot(), llvm::AArch64InstrInfo::loadRegFromStackSlot(), llvm::ARMBaseInstrInfo::loadRegFromStackSlot(), llvm::PPCRegisterInfo::lowerCRBitRestore(), llvm::PPCRegisterInfo::lowerDynamicAlloc(), llvm::Mips16InstrInfo::makeFrame(), llvm::SIRegisterInfo::materializeFrameBaseRegister(), MoveAndTeeForMultiUse(), llvm::SIInstrInfo::moveToVALU(), llvm::PPCInstrInfo::optimizeCompareInstr(), llvm::AArch64InstrInfo::optimizeCondBranch(), llvm::R600InstrInfo::PredicateInstruction(), llvm::SystemZInstrInfo::PredicateInstruction(), llvm::HexagonInstrInfo::PredicateInstruction(), propagateSwiftErrorVRegs(), llvm::SIInstrInfo::readlaneVGPRToSGPR(), replaceFI(), llvm::SystemZFrameLowering::restoreCalleeSavedRegisters(), llvm::Thumb1FrameLowering::restoreCalleeSavedRegisters(), llvm::AArch64FrameLowering::restoreCalleeSavedRegisters(), llvm::Mips16InstrInfo::restoreFrame(), llvm::SIRegisterInfo::restoreSGPR(), llvm::FixFSMULD::runOnMachineFunction(), llvm::ReplaceFMULS::runOnMachineFunction(), llvm::ThumbRegisterInfo::saveScavengerRegister(), llvm::FastISel::selectIntrinsicCall(), llvm::ARMBaseInstrInfo::setExecutionDomain(), llvm::SystemZFrameLowering::spillCalleeSavedRegisters(), llvm::Thumb1FrameLowering::spillCalleeSavedRegisters(), llvm::PPCFrameLowering::spillCalleeSavedRegisters(), llvm::SIRegisterInfo::spillSGPR(), llvm::X86InstrInfo::storeRegToAddr(), llvm::Mips16InstrInfo::storeRegToStack(), llvm::MipsSEInstrInfo::storeRegToStack(), llvm::BPFInstrInfo::storeRegToStackSlot(), llvm::LanaiInstrInfo::storeRegToStackSlot(), llvm::MSP430InstrInfo::storeRegToStackSlot(), llvm::XCoreInstrInfo::storeRegToStackSlot(), llvm::AVRInstrInfo::storeRegToStackSlot(), llvm::SparcInstrInfo::storeRegToStackSlot(), llvm::SIInstrInfo::storeRegToStackSlot(), llvm::AArch64InstrInfo::storeRegToStackSlot(), llvm::HexagonInstrInfo::storeRegToStackSlot(), llvm::ARMBaseInstrInfo::storeRegToStackSlot(), llvm::X86InstrInfo::storeRegToStackSlot(), llvm::ScheduleDAGInstrs::toggleKillFlag(), llvm::X86InstrInfo::unfoldMemoryOperand(), UpdatePredRedefs(), and writeSPToMemory().
|
inline |
Definition at line 168 of file MachineInstrBuilder.h.
References llvm::MachineInstr::addOperand(), and llvm::MachineOperand::CreateRegMask().
Referenced by llvm::PPCTargetLowering::emitEHSjLjSetJmp(), and llvm::SystemZInstrInfo::PredicateInstruction().
|
inline |
Definition at line 218 of file MachineInstrBuilder.h.
References llvm::MachineInstr::addOperand(), and llvm::MachineOperand::CreateMCSymbol().
|
inline |
Definition at line 135 of file MachineInstrBuilder.h.
References llvm::MachineInstr::addOperand(), llvm::MachineOperand::CreateTargetIndex(), and Offset.
|
inline |
Add a virtual register use operand.
It is an error for Flags to contain RegState::Define when calling this function.
Definition at line 94 of file MachineInstrBuilder.h.
References addReg(), assert(), llvm::RegState::Define, fuzzer::Flags, and SubReg.
Referenced by llvm::MachineIRBuilder::addUsesWithIndices(), llvm::MachineIRBuilder::buildAdd(), llvm::MachineIRBuilder::buildAnyExt(), llvm::MachineIRBuilder::buildBrCond(), llvm::MachineIRBuilder::buildCopy(), llvm::MachineIRBuilder::buildFCmp(), llvm::MachineIRBuilder::buildFPTrunc(), llvm::MachineIRBuilder::buildGEP(), llvm::MachineIRBuilder::buildICmp(), llvm::MachineIRBuilder::buildInsert(), llvm::MachineIRBuilder::buildLoad(), llvm::MachineIRBuilder::buildMul(), llvm::MachineIRBuilder::buildSelect(), llvm::MachineIRBuilder::buildSExt(), llvm::MachineIRBuilder::buildSExtOrTrunc(), llvm::MachineIRBuilder::buildStore(), llvm::MachineIRBuilder::buildSub(), llvm::MachineIRBuilder::buildTrunc(), llvm::MachineIRBuilder::buildUAdde(), llvm::MachineIRBuilder::buildZExt(), llvm::AArch64InstructionSelector::select(), and llvm::LegalizerHelper::widenScalar().
|
inline |
Copy all the implicit operands from OtherMI onto this one.
Definition at line 260 of file MachineInstrBuilder.h.
References llvm::MachineInstr::copyImplicitOps().
Referenced by llvm::MipsInstrInfo::genInstrWithNewOpc(), llvm::LanaiInstrInfo::optimizeSelect(), and llvm::Thumb1FrameLowering::restoreCalleeSavedRegisters().
|
inline |
If conversion operators fail, use this method to get the MachineInstr explicitly.
Definition at line 66 of file MachineInstrBuilder.h.
Referenced by llvm::SparcInstrInfo::copyPhysReg(), expandLoadStackGuard(), expandMOV32r1(), ExpandMOVImmSExti8(), and llvm::XCoreInstrInfo::loadImmediate().
|
inline |
Definition at line 62 of file MachineInstrBuilder.h.
|
inline |
Allow automatic conversion to the machine instruction we are working on.
Definition at line 60 of file MachineInstrBuilder.h.
|
inline |
Definition at line 61 of file MachineInstrBuilder.h.
|
inline |
Definition at line 178 of file MachineInstrBuilder.h.
References llvm::MachineInstr::setMemRefs().
Referenced by convertCalleeSaveRestoreToSPPrePostIncDec(), llvm::PPCTargetLowering::emitEHSjLjLongJmp(), llvm::PPCTargetLowering::emitEHSjLjSetJmp(), llvm::HexagonInstrInfo::expandPostRAPseudo(), llvm::MipsInstrInfo::genInstrWithNewOpc(), llvm::SIInstrInfo::legalizeOperands(), llvm::X86InstrInfo::loadRegFromAddr(), and llvm::X86InstrInfo::storeRegToAddr().
|
inline |
Definition at line 184 of file MachineInstrBuilder.h.
References llvm::MachineInstr::setMemRefs().
|
inline |
Definition at line 229 of file MachineInstrBuilder.h.
References llvm::MachineInstr::setFlag().
Referenced by llvm::emitFrameOffset(), llvm::AVRFrameLowering::emitPrologue(), llvm::Mips16FrameLowering::emitPrologue(), llvm::MipsSEFrameLowering::emitPrologue(), llvm::LanaiFrameLowering::emitPrologue(), llvm::X86FrameLowering::emitPrologue(), llvm::X86FrameLowering::emitSPUpdate(), llvm::AArch64FrameLowering::restoreCalleeSavedRegisters(), and llvm::X86FrameLowering::restoreWin32EHStackPointers().
|
inline |
Definition at line 224 of file MachineInstrBuilder.h.
References llvm::MachineInstr::setFlags().
Referenced by convertCalleeSaveRestoreToSPPrePostIncDec(), llvm::emitARMRegPlusImmediate(), llvm::AArch64FrameLowering::emitCalleeSavedFrameMoves(), llvm::ARMBaseRegisterInfo::emitLoadConstPool(), llvm::Thumb1FrameLowering::emitPrologue(), llvm::ARMFrameLowering::emitPrologue(), llvm::AArch64FrameLowering::emitPrologue(), llvm::emitT2RegPlusImmediate(), emitThumb1LoadConstPool(), emitThumb2LoadConstPool(), llvm::emitThumbRegPlusImmediate(), emitThumbRegPlusImmInReg(), and llvm::Thumb1FrameLowering::spillCalleeSavedRegisters().
1.8.6