LLVM 20.0.0git
Macros | Functions | Variables
DeadArgumentElimination.cpp File Reference
#include "llvm/Transforms/IPO/DeadArgumentElimination.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/IR/Argument.h"
#include "llvm/IR/AttributeMask.h"
#include "llvm/IR/Attributes.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DIBuilder.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/InstrTypes.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/NoFolder.h"
#include "llvm/IR/PassManager.h"
#include "llvm/IR/Type.h"
#include "llvm/IR/Use.h"
#include "llvm/IR/User.h"
#include "llvm/IR/Value.h"
#include "llvm/InitializePasses.h"
#include "llvm/Pass.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Transforms/IPO.h"
#include "llvm/Transforms/Utils/BasicBlockUtils.h"
#include <cassert>
#include <utility>
#include <vector>

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "deadargelim"
 

Functions

 STATISTIC (NumArgumentsEliminated, "Number of unread args removed")
 
 STATISTIC (NumRetValsEliminated, "Number of unused return values removed")
 
 STATISTIC (NumArgumentsReplacedWithPoison, "Number of unread args replaced with poison")
 
 INITIALIZE_PASS (DAH, "deadarghaX0r", "Dead Argument Hacking (BUGPOINT USE ONLY; DO NOT USE)", false, false) ModulePass *llvm
 This pass removes arguments from functions which are not used by the body of the function.
 
Convenience function that returns the number of return values It returns for void functions and for functions not returning a struct It returns the number of struct elements for functions returning a struct static unsigned numRetVals (const Function *F)
 
Returns the sub type a function will return at a given Idx Should correspond to the result type of an ExtractValue instruction executed with just that one Idx (i.e. only top-level structure is considered). static Type *getRetComponentType(const Function *F
 
 assert (!RetTy->isVoidTy() &&"void type has no subtype")
 
 if (StructType *STy=dyn_cast< StructType >(RetTy)) return STy -> getElementType(Idx)
 
 if (ArrayType *ATy=dyn_cast< ArrayType >(RetTy)) return ATy -> getElementType()
 
Looks at all the uses of the given value Returns the Liveness deduced from the uses of this value Adds all uses that cause the result to be MaybeLive to MaybeLiveRetUses If the result is MaybeLiveUses might be modified but its content should be ignored (since it might not be complete). DeadArgumentEliminationPass
 
Mark the given Function as meaning that it cannot be changed in any way mark any values that are used as this function s parameters or by its return values (according to Uses) live as well. void DeadArgumentEliminationPass
 
Mark the given return value or argument as live mark any values that are used by this value (according to Uses) live as well. void DeadArgumentEliminationPass
 
Given that RA is a live propagate it s liveness to any other values it uses (according to Uses). void DeadArgumentEliminationPass
 

Variables

Returns the sub type a function will return at a given Idx Should correspond to the result type of an ExtractValue instruction executed with just that one unsigned Idx
 
return RetTy
 
Checks Use for liveness in LiveValues If Use is not live
 
Looks at a single use of an argument or return value and determines if it should be alive or not Adds this use to MaybeLiveUses if it causes the used value to become MaybeLive RetValNum is the return value number to use when this use is used in a return instruction This is used in the recursion
 
Looks at all the uses of the given value Returns the Liveness deduced from the uses of this value Adds all uses that cause the result to be MaybeLive to MaybeLiveRetUses If the result is Live
 
Performs the initial survey of the specified function
 
Marks the liveness of RA depending on L If L is MaybeLive
 
Marks the liveness of RA depending on L If L is it also takes all uses in MaybeLiveUses and records them in Uses
 
Mark the given Function as alive
 
Mark the given Function as meaning that it cannot be changed in any way Additionally
 
Given that RA is a live value
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "deadargelim"

Definition at line 55 of file DeadArgumentElimination.cpp.

Function Documentation

◆ assert()

assert ( !RetTy->isVoidTy() &&"void type has no subtype"  )

◆ Idx()

Returns the sub type a function will return at a given Idx Should correspond to the result type of an ExtractValue instruction executed with just that one Idx ( i.e. only top-level structure is  considered) const

◆ if() [1/2]

if ( ArrayType ATy = dyn_cast< ArrayType >(RetTy)) -> getElementType()

◆ if() [2/2]

if ( StructType STy = dyn_cast< StructType >(RetTy)) -> getElementType(Idx)

◆ ignored()

Looks at all the uses of the given value Returns the Liveness deduced from the uses of this value Adds all uses that cause the result to be MaybeLive to MaybeLiveRetUses If the result is MaybeLiveUses might be modified but its content should be ignored ( since it might not be  complete)

◆ INITIALIZE_PASS()

INITIALIZE_PASS ( DAH  ,
"deadarghaX0r"  ,
"Dead Argument Hacking (BUGPOINT USE ONLY; DO NOT USE)"  ,
false  ,
false   
)

This pass removes arguments from functions which are not used by the body of the function.

Definition at line 116 of file DeadArgumentElimination.cpp.

◆ numRetVals()

Convenience function that returns the number of return values It returns for void functions and for functions not returning a struct It returns the number of struct elements for functions returning a struct static unsigned numRetVals ( const Function F)

Definition at line 338 of file DeadArgumentElimination.cpp.

References F, and RetTy.

Referenced by values().

◆ STATISTIC() [1/3]

STATISTIC ( NumArgumentsEliminated  ,
"Number of unread args removed"   
)

◆ STATISTIC() [2/3]

STATISTIC ( NumArgumentsReplacedWithPoison  ,
"Number of unread args replaced with poison"   
)

◆ STATISTIC() [3/3]

STATISTIC ( NumRetValsEliminated  ,
"Number of unused return values removed"   
)

◆ uses()

Given that RA is a live propagate it s liveness to any other values it uses ( according to  Uses)

◆ value()

Mark the given return value or argument as live mark any values that are used by this value ( according to  Uses)

◆ values()

Mark the given Function as meaning that it cannot be changed in any way mark any values that are used as this function s parameters or by its return values ( according to  Uses)

Variable Documentation

◆ Additionally

Mark the given return value or argument as live Additionally

Definition at line 683 of file DeadArgumentElimination.cpp.

◆ alive

Mark the given Function as alive

Definition at line 682 of file DeadArgumentElimination.cpp.

◆ function

Performs the initial survey of the specified function

Definition at line 487 of file DeadArgumentElimination.cpp.

Referenced by llvm::pdb::DIARawSymbol::dump().

◆ Idx

Returns the sub type a function will return at a given Idx Should correspond to the result type of an ExtractValue instruction executed with just that one unsigned Idx
Initial value:
{
Type *RetTy = F->getReturnType()
return RetTy
#define F(x, y, z)
Definition: MD5.cpp:55
The instances of the Type class are immutable: once they are created, they are never changed.
Definition: Type.h:45

Definition at line 352 of file DeadArgumentElimination.cpp.

Referenced by llvm::AbstractCallSite::AbstractCallSite(), llvm::slpvectorizer::BoUpSLP::ShuffleCostEstimator::add(), false::Chain::add(), llvm::slpvectorizer::BoUpSLP::ShuffleInstructionBuilder::add(), llvm::DwarfCompileUnit::addBaseTypeRef(), llvm::MachineInstrBuilder::addConstantPoolIndex(), llvm::DwarfExpression::addExpression(), llvm::CodeViewContext::addFile(), llvm::MachineInstrBuilder::addFrameIndex(), llvm::dwarf_linker::parallel::DIEGenerator::addIndexedStringAttribute(), llvm::PressureDiffs::addInstruction(), llvm::MachineInstrBuilder::addJumpTableIndex(), llvm::DwarfExpression::addMachineReg(), addMask(), addOptionalImmOperand(), llvm::MachineInstrBuilder::addTargetIndex(), llvm::tlshoist::TLSCandidate::addUser(), llvm::consthoist::ConstantCandidate::addUser(), llvm::ConstraintSystem::addVariableRow(), llvm::slpvectorizer::BoUpSLP::ShuffleInstructionBuilder::adjustExtracts(), adjustForEndian(), llvm::RISCVTargetLowering::AdjustInstrPostInstrSelection(), llvm::analyzeContextInfo(), analyzeExitPHIsForOutputUses(), analyzeLoopUnrollCost(), llvm::CombinerHelper::applyCombineUnmergeConstant(), llvm::CombinerHelper::applyCombineUnmergeMergeToPlainValues(), llvm::CombinerHelper::applyCombineUnmergeZExtToZExt(), llvm::ARMAsmBackend::applyFixup(), llvm::CSKYAsmBackend::applyFixup(), llvm::MipsAsmBackend::applyFixup(), llvm::AMDGPURegisterBankInfo::applyMappingImpl(), llvm::BitcodeReaderValueList::assignValue(), llvm::LegalizerHelper::bitcastExtractVectorElt(), llvm::LegalizerHelper::bitcastInsertVectorElt(), llvm::MachineIRBuilder::buildConstantPool(), llvm::MachineIRBuilder::buildExtractSubvector(), llvm::MachineIRBuilder::buildExtractVectorElement(), llvm::MachineIRBuilder::buildExtractVectorElementConstant(), llvm::MachineIRBuilder::buildFrameIndex(), buildFromShuffleMostly(), buildIndexMap(), llvm::MachineIRBuilder::buildInsertSubvector(), llvm::MachineIRBuilder::buildInsertVectorElement(), buildIntrinsicArgTypes(), buildNew(), llvm::SIInstrInfo::buildShrunkInst(), buildUseMask(), BuildVectorFromScalar(), bundleHasArgument(), llvm::BuryPointer(), llvm::codelayout::calcExtTspScore(), llvm::calculateDbgEntityHistory(), llvm::ARMTargetLowering::canCombineStoreAndExtract(), canCreateUndefOrPoison(), llvm::SelectionDAG::canCreateUndefOrPoison(), CanMergeParamLoadStoresStartingAt(), canReplaceGEPIdxWithZero(), canScalarizeAccess(), llvm::slpvectorizer::BoUpSLP::canVectorizeLoads(), castBufferRsrcArgToV4I32(), castBufferRsrcFromV4I32(), llvm::MachineOperand::ChangeToFrameIndex(), llvm::MachineOperand::ChangeToTargetIndex(), TransferTracker::checkInstForNewValues(), llvm::LiveIntervals::checkRegMaskInterference(), clampDynamicVectorIndex(), llvm::X86InstrInfo::classifyLEAReg(), llvm::dwarf_linker::parallel::DIEAttributeCloner::cloneBlockAttr(), llvm::dwarf_linker::parallel::CompileUnit::cloneDieAttrExpression(), collectConcatOps(), collectHWRegs(), collectInlineAsmInstrOperands(), collectMultiplyFactors(), CollectOpsToWiden(), combineAnd(), combineConcatVectorOps(), combineExtractFromVectorLoad(), combineExtractVectorElt(), combineExtractWithShuffle(), combineHorizOpWithShuffle(), combineMOVMSK(), combineOrders(), combineShuffleOfScalars(), combineShuffleOfSplatVal(), combineTargetShuffle(), combineVectorInsert(), combinevXi1ConstantToInteger(), combineX86ShuffleChain(), combineX86ShuffleChainWithExtract(), combineX86ShufflesRecursively(), llvm::ShuffleVectorInst::commuteShuffleMask(), llvm::IRSimilarity::IRSimilarityCandidate::compareCommutativeOperandMapping(), llvm::IRSimilarity::IRSimilarityCandidate::compareNonCommutativeOperandMapping(), CompareValueComplexity(), llvm::CompleteNodeLabelString(), llvm::BitTracker::MachineEvaluator::composeWithSubRegIndex(), llvm::HexagonEvaluator::composeWithSubRegIndex(), computeAlignmentAfterScalarization(), llvm::SelectionDAG::computeKnownBits(), llvm::ARMTargetLowering::computeKnownBitsForTargetNode(), llvm::X86TargetLowering::computeKnownBitsForTargetNode(), computeKnownBitsFromOperator(), llvm::GISelKnownBits::computeKnownBitsImpl(), computeKnownFPClass(), llvm::slpvectorizer::BoUpSLP::computeMinimumValueSizes(), llvm::SelectionDAG::ComputeNumSignBits(), llvm::RegisterClassInfo::computePSetLimit(), llvm::ConcurrentHashTableByPtr< KeyTy, KeyDataTy, AllocatorTy, Info >::ConcurrentHashTableByPtr(), constantFoldAndGroupOps(), llvm::ConstantFoldExtractElementInstruction(), llvm::ConstantFoldGetElementPtr(), llvm::ConstantFoldInsertElementInstruction(), llvm::ConstantFoldTerminator(), llvm::ConstantFoldVectorBinop(), constructDup(), llvm::ImmutableGraph< NodeValueT, EdgeValueT >::EdgeSet::contains(), llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::contains(), llvm::DebugCounter::Chunk::contains(), llvm::MIRPrinter::convertStackObjects(), convertToString(), llvm::RISCVInstrInfo::convertToThreeAddress(), llvm::PPCInstrInfo::copyPhysReg(), llvm::SIInstrInfo::copyPhysReg(), copyPhysSubRegs(), llvm::XtensaConstantPoolMBB::Create(), llvm::XtensaConstantPoolJumpTable::Create(), llvm::ExtractElementInst::Create(), llvm::sandboxir::ExtractElementInst::create(), llvm::InsertElementInst::Create(), llvm::sandboxir::InsertElementInst::create(), createAndInsertBasicBlocks(), llvm::DeadArgumentEliminationPass::createArg(), llvm::IRBuilderBase::CreateConstGEP1_32(), llvm::IRBuilderBase::CreateConstGEP1_64(), llvm::IRBuilderBase::CreateConstInBoundsGEP1_32(), llvm::IRBuilderBase::CreateConstInBoundsGEP1_64(), llvm::MachineOperand::CreateCPI(), llvm::IRBuilderBase::CreateExtractElement(), llvm::IRBuilderBase::CreateExtractVector(), llvm::object::ELFFile< ELFT >::createFakeSections(), llvm::MachineOperand::CreateFI(), llvm::MatrixBuilder::CreateIndexAssumption(), llvm::IRBuilderBase::CreateInsertElement(), llvm::IRBuilderBase::CreateInsertVector(), llvm::mca::InstrBuilder::createInstruction(), llvm::MachineOperand::CreateJTI(), llvm::createPHIsForSplitLoopExit(), createRelLookupTable(), llvm::DeadArgumentEliminationPass::createRet(), llvm::pdb::DbiStreamBuilder::createSectionMap(), llvm::IRBuilderBase::CreateStructGEP(), createSwitchStatement(), llvm::MachineOperand::CreateTargetIndex(), createVariablePermute(), llvm::IRBuilderBase::CreateVectorSplice(), LiveDebugValues::DbgValue::DbgValue(), llvm::decodeBase64(), llvm::AMDGPU::decodeCustomOperand(), llvm::DecodeEXTRQIMask(), llvm::DecodeInsertElementMask(), llvm::DecodeINSERTQIMask(), LiveDebugValues::MLocTracker::defReg(), llvm::deleteDeadLoop(), detectShiftUntilLessThanIdiom(), llvm::DetermineUseCaptureKind(), llvm::ConnectedVNInfoEqClasses::Distribute(), LiveDebugValues::DbgValue::dump(), llvm::sandboxir::Tracker::dump(), dumpMachineInstrRangeWithSlotIndex(), dumpOrder(), llvm::DwarfDebug::emitDebugLocValue(), llvm::CodeViewContext::emitFileChecksumOffset(), llvm::WebAssemblyAsmPrinter::emitFunctionBodyStart(), emitIndirectDst(), emitIndirectSrc(), llvm::ARMAsmPrinter::emitInstruction(), llvm::R600TargetLowering::EmitInstrWithCustomInserter(), llvm::X86TargetLowering::EmitInstrWithCustomInserter(), llvm::ARMBaseRegisterInfo::emitLoadConstPool(), emitLoadM0FromVGPRLoop(), emitLoadScalarOpsFromVGPRLoop(), LiveDebugValues::MLocTracker::emitLoc(), llvm::XtensaAsmPrinter::emitMachineConstantPoolValue(), emitPseudoXVINSGR2VR(), emitThumb1LoadConstPool(), emitThumb2LoadConstPool(), llvm::AMDGPU::encodeCustomOperand(), llvm::SplitEditor::enterIntvAfter(), llvm::SplitEditor::enterIntvBefore(), llvm::LegalizerHelper::equalizeVectorShuffleLengths(), llvm::XtensaConstantPoolJumpTable::equals(), llvm::ImmutableGraph< NodeValueT, EdgeValueT >::EdgeSet::erase(), llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::erase(), llvm::DOTGraphTraits< DOTFuncInfo * >::eraseComment(), llvm::DOTGraphTraits< DOTMachineFuncInfo * >::eraseComment(), llvm::VPInterleaveRecipe::execute(), llvm::GIMatchTableExecutor::executeMatchTable(), expandFromPrimitiveShadowRecursive(), llvm::SIInstrInfo::expandPostRAPseudo(), expandSGPRCopy(), llvm::expandUser(), llvm::TargetLowering::expandVECTOR_COMPRESS(), llvm::LiveIntervals::extendToIndices(), llvm::AlignmentFromAssumptionsPass::extractAlignmentInfo(), ExtractBitFromMaskVector(), llvm::extractProfTotalWeight(), llvm::fuzzerop::extractValueDescriptor(), llvm::FastISel::fastEmitInst_extractsubreg(), llvm::LegalizerHelper::fewerElementsVectorExtractInsertVectorElt(), llvm::LegalizerHelper::fewerElementsVectorReductions(), llvm::LegalizerHelper::fewerElementsVectorShuffle(), llvm::SchedDFSImpl::finalize(), llvm::gsym::GsymCreator::finalize(), llvm::PPCInstrInfo::finalizeInsInstrs(), llvm::pdb::GSIStreamBuilder::finalizeMsfLayout(), llvm::OnDiskChainedHashTable< Info >::find_hashed(), llvm::SparseBitVectorElement< ElementSize >::find_last(), findAffectedValues(), findBestInsertionSet(), findCanonNumsForPHI(), findCondCodeUseOperandIdxForBranchOrSelect(), findEltLoadSrc(), llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::findIndex(), llvm::SparseSet< ValueT, KeyFunctorT, SparseT >::findIndex(), llvm::LiveRange::findIndexesLiveAt(), findInsertLocation(), findOrCreatePHIInBlock(), findPHIForConditionForwarding(), llvm::MachineInstr::findRegisterDefOperand(), llvm::MachineInstr::findRegisterUseOperand(), llvm::slpvectorizer::BoUpSLP::findReusedOrderedScalars(), llvm::LiveRange::FindSegmentContaining(), FindSequence(), llvm::SSAUpdaterImpl< UpdaterT >::FindSingularVal(), fixupOrderingIndices(), fixupPHINodeForNormalDest(), fixupPHINodeForUnwindDest(), fixupShuffleMaskForPermutedSToV(), llvm::BitVector::flip(), llvm::SmallBitVector::flip(), llvm::BinOpInit::Fold(), llvm::InstCombinerImpl::foldCmpLoadFromIndexedGlobal(), llvm::InstSimplifyFolder::FoldExtractElement(), llvm::TargetFolder::FoldExtractElement(), llvm::ConstantFolder::FoldExtractElement(), llvm::InstSimplifyFolder::FoldInsertElement(), llvm::TargetFolder::FoldInsertElement(), llvm::ConstantFolder::FoldInsertElement(), foldInsSequenceIntoSplat(), llvm::InstCombinerImpl::foldSelectICmp(), llvm::InformationCache::foreachUse(), llvm::ARMAsmBackendDarwin::generateCompactUnwindEncoding(), generateCreationChecks(), generateNewInstTree(), llvm::sandboxir::GenericSetterWithIdx< GetterFn, SetterFn >::GenericSetterWithIdx(), llvm::logicalview::LVProperties< T >::get(), llvm::rdf::IndexedSet< T, N >::get(), llvm::ScalarEvolution::getAddExpr(), llvm::sandboxir::Function::getArg(), llvm::sandboxir::FuncletPadInst::getArgOperand(), llvm::sandboxir::CallBase::getArgOperandUse(), llvm::CSKYMCCodeEmitter::getBareSymbolOpValue(), getBitcastWiderVectorElementOffset(), llvm::CSKYMCCodeEmitter::getBranchSymbolOpValue(), getBundledDefMI(), getBundledUseMI(), llvm::parallel::PerThreadAllocator< AllocatorTy >::getBytesAllocated(), llvm::CSKYMCCodeEmitter::getCallSymbolOpValue(), getCaseResults(), llvm::LandingPadInst::getClause(), llvm::MachineConstantPool::getConstantPoolIndex(), getConstMetaVal(), llvm::CSKYMCCodeEmitter::getConstpoolSymbolOpValue(), GetCostForDef(), llvm::TargetRegisterInfo::getCoveringSubRegIndexes(), getDagArgNoByKey(), llvm::CSKYMCCodeEmitter::getDataSymbolOpValue(), llvm::AMDGPU::getDefaultCustomOperandEncoding(), llvm::dwarf_linker::parallel::CompileUnit::getDIEInfo(), llvm::dwarf_linker::parallel::CompileUnit::getDieOutOffset(), llvm::dwarf_linker::parallel::CompileUnit::getDieTypeEntry(), getDominatees(), llvm::StructLayout::getElementOffset(), llvm::StructLayout::getElementOffsetInBits(), llvm::ConstantAggregateZero::getElementValue(), llvm::UndefValue::getElementValue(), llvm::PoisonValue::getElementValue(), llvm::GenericCycle< ContextT >::getExitBlocks(), llvm::ConstantExpr::getExtractElement(), llvm::PseudoSourceValueManager::getFixedStack(), llvm::PPCInstrInfo::getFMAPatterns(), getFPValueMapping(), llvm::SIRegisterInfo::getFrameIndexInstrOffset(), llvm::ARMBaseRegisterInfo::getFrameIndexInstrOffset(), llvm::RISCVRegisterInfo::getFrameIndexInstrOffset(), llvm::NVPTXTargetLowering::getFunctionArgumentAlignment(), llvm::gsym::GsymReader::getFunctionInfoAtIndex(), llvm::CodeViewContext::getFunctionLineEntries(), llvm::ConstantExpr::getGetElementPtr(), llvm::ValueEnumerator::getGlobalBasicBlockID(), getGVNForPHINode(), llvm::getHorizDemandedEltsForFirstOperand(), llvm::NVPTXMachineFunctionInfo::getImageHandleSymbol(), llvm::CSKYMCCodeEmitter::getImmJMPIX(), llvm::CSKYMCCodeEmitter::getImmOpValue(), llvm::CSKYMCCodeEmitter::getImmOpValueIDLY(), llvm::CSKYMCCodeEmitter::getImmOpValueMSBSize(), llvm::CSKYMCCodeEmitter::getImmShiftOpValue(), llvm::ConstantExpr::getInBoundsGetElementPtr(), llvm::SSAUpdaterTraits< LDVSSAUpdater >::PHI_iterator::getIncomingBlock(), llvm::sandboxir::PHINode::getIncomingBlock(), llvm::SSAUpdaterTraits< LDVSSAUpdater >::PHI_iterator::getIncomingValue(), llvm::sandboxir::PHINode::getIncomingValue(), llvm::VPBlendRecipe::getIncomingValue(), llvm::MemoryPhi::getIncomingValueForBlock(), llvm::PHINode::getIncomingValueForBlock(), llvm::sandboxir::PHINode::getIncomingValueNumForOperand(), llvm::XtensaConstantPoolJumpTable::getIndex(), llvm::DataLayout::getIndexedOffsetInType(), llvm::sandboxir::CallBrInst::getIndirectDest(), llvm::sandboxir::CallBrInst::getIndirectDestLabel(), llvm::sandboxir::CallBrInst::getIndirectDestLabelUse(), getIndirectSGPRIdx(), llvm::dwarf_linker::classic::CompileUnit::getInfo(), llvm::object::DirectX::PSVRuntimeInfo::getInputOutputMap(), llvm::ConstantExpr::getInsertElement(), llvm::HexagonBlockRanges::InstrIndexMap::getInstr(), llvm::AArch64RegisterBankInfo::getInstrMapping(), llvm::RISCVRegisterBankInfo::getInstrMapping(), M68kDisassembler::getInstruction(), llvm::TargetTransformInfoImplCRTPBase< T >::getInstructionCost(), llvm::MemoryDepChecker::getInstructionsForAccess(), llvm::TargetTransformInfo::getIntImmCodeSizeCost(), llvm::TargetTransformInfo::getIntImmCostInst(), llvm::AArch64TTIImpl::getIntImmCostInst(), llvm::ARMTTIImpl::getIntImmCostInst(), llvm::PPCTTIImpl::getIntImmCostInst(), llvm::RISCVTTIImpl::getIntImmCostInst(), llvm::SystemZTTIImpl::getIntImmCostInst(), llvm::X86TTIImpl::getIntImmCostInst(), llvm::TargetTransformInfo::getIntImmCostIntrin(), llvm::AArch64TTIImpl::getIntImmCostIntrin(), llvm::PPCTTIImpl::getIntImmCostIntrin(), llvm::SystemZTTIImpl::getIntImmCostIntrin(), llvm::X86TTIImpl::getIntImmCostIntrin(), llvm::AArch64TTIImpl::getIntrinsicInstrCost(), getItineraryLatency(), llvm::AArch64FunctionInfo::getJumpTableEntryPCRelSymbol(), llvm::AArch64FunctionInfo::getJumpTableEntrySize(), llvm::getKnowledgeFromBundle(), llvm::getKnowledgeFromOperandInAssume(), llvm::AArch64InstrInfo::getLdStBaseOp(), llvm::AArch64InstrInfo::getLdStOffsetOp(), getLdStRegOp(), llvm::omp::getLeafConstructs(), llvm::omp::getLeafConstructsOrSelf(), llvm::TargetPassConfig::getLimitedCodeGenPipelineReason(), LiveDebugValues::MLocTracker::getLocID(), llvm::VPBlendRecipe::getMask(), llvm::ShuffleVectorSDNode::getMaskElt(), llvm::TargetRegisterInfo::getMatchingSuperRegClass(), llvm::SlotIndexes::getMBBLowerBound(), llvm::SlotIndexes::getMBBUpperBound(), llvm::MetadataLoader::getMetadataFwdRefOrLoad(), llvm::ScalarEvolution::getMinMaxExpr(), llvm::ReachingDefAnalysis::getMIOperand(), llvm::ScalarEvolution::getMulExpr(), llvm::SIInstrInfo::getNamedImmOperand(), llvm::SIInstrInfo::getNamedOperand(), llvm::AMDGPU::getNameFromOperandTable(), llvm::HexagonBlockRanges::InstrIndexMap::getNextIndex(), llvm::DominatorTreeBase< NodeT, IsPostDom >::getNode(), llvm::DomTreeBuilder::SemiNCAInfo< DomTreeT >::getNodeInfo(), llvm::DOTGraphTraits< DOTFuncMSSAInfo * >::getNodeLabel(), getOffsetFromIndex(), getOffsetFromIndices(), llvm::CSKYMCCodeEmitter::getOImmOpValue(), llvm::mca::InstructionBase::getOperand(), llvm::DWARFExpression::Operation::getOperandEndOffset(), llvm::HexagonInstrInfo::getOperandLatency(), llvm::sandboxir::PHINode::getOperandNumForIncomingValue(), getOperandSize(), llvm::RegisterBankInfo::getOperandsMapping(), getOptionalVal(), llvm::MCContext::getOrCreateFrameAllocSymbol(), LiveDebugValues::MLocTracker::getOrTrackSpillLoc(), getOutputSegmentMap(), llvm::object::DirectX::PSVRuntimeInfo::getOutputVectorMasks(), llvm::NVPTXTargetLowering::getParamName(), llvm::HexagonTargetLowering::getPICJumpTableRelocBase(), llvm::Value::getPointerOffsetFrom(), llvm::HexagonBlockRanges::InstrIndexMap::getPrevIndex(), llvm::orc::LocalIndirectStubsInfo< ORCABI >::getPtr(), llvm::DWARFExpression::Operation::getRawOperand(), llvm::GenericMachineInstr::getReg(), llvm::MachineInstrBuilder::getReg(), llvm::FastISel::getRegForGEPIndex(), llvm::SITargetLowering::getRegForInlineAsmConstraint(), llvm::TargetRegisterInfo::getRegisterCosts(), llvm::SIRegisterInfo::getRegPressureSetLimit(), llvm::RegisterClassInfo::getRegPressureSetLimit(), llvm::CSKYMCCodeEmitter::getRegSeqImmOpValue(), llvm::slpvectorizer::BoUpSLP::getReorderingData(), getScalarValueForVectorElement(), llvm::WindowScheduler::getSearchIndexes(), llvm::LiveRange::getSegmentContaining(), llvm::object::MachOObjectFile::getSegmentContents(), llvm::ScalarEvolution::getSequentialMinMaxExpr(), getShuffleVectorZeroOrUndef(), LiveDebugValues::MLocTracker::getSpillIDWithIdx(), getSplatableConstant(), llvm::SelectionDAG::getSplatSourceVector(), getSToVPermuted(), llvm::orc::LocalIndirectStubsInfo< ORCABI >::getStub(), llvm::TargetRegisterInfo::getSubClassWithSubReg(), llvm::AArch64RegisterInfo::getSubClassWithSubReg(), llvm::X86RegisterInfo::getSubClassWithSubReg(), llvm::TargetRegisterInfo::getSubReg(), llvm::MCRegisterInfo::getSubReg(), llvm::TargetRegisterInfo::getSubRegIdxOffset(), llvm::TargetRegisterInfo::getSubRegIdxSize(), llvm::CatchSwitchInst::getSuccessor(), llvm::sandboxir::CallBrInst::getSuccessor(), llvm::sandboxir::CatchSwitchInst::getSuccessor(), llvm::sandboxir::SwitchInst::getSuccessor(), llvm::SuccIterator< InstructionT, BlockT >::getSuccessorIndex(), llvm::object::XCOFFObjectFile::getSymbolByIndex(), ParameterPack::getSyntaxNode(), getTargetShuffleAndZeroables(), llvm::parallel::PerThreadAllocator< AllocatorTy >::getTotalMemory(), llvm::slpvectorizer::BoUpSLP::getTreeCost(), llvm::StructType::getTypeAtIndex(), llvm::GetElementPtrInst::getTypeAtIndex(), getUnderlyingExtractedFromVec(), getUniqueInsertion(), llvm::PackedVectorBase< T, BitNum, BitVectorTy, false >::getValue(), llvm::PackedVectorBase< T, BitNum, BitVectorTy, true >::getValue(), getValueFromBundleOpInfo(), getValueFwdRef(), llvm::BitcodeReaderValueList::getValueFwdRef(), GetVBR(), llvm::LiveRange::getVNInfoAt(), llvm::LiveRange::getVNInfoBefore(), getVRBValueMapping(), llvm::object::MachOObjectFile::guessLibraryShortName(), llvm::CallLowering::handleAssignments(), llvm::DebugValueUser::handleChangedValue(), handleNormalInst(), handleRegMaskClobber(), llvm::DIExpression::hasAllLocationOps(), llvm::AMDGPU::hasAny64BitVGPROperands(), ParameterPack::hasArraySlow(), ParameterPack::hasFunctionSlow(), hashValueMapping(), LiveDebugValues::DbgValue::hasJoinableLocOps(), hasLiveThroughUse(), hasOnlyOneNonZeroIndex(), ParameterPack::hasRHSComponentSlow(), llvm::rdf::NodeAllocator::id(), llvm::BumpPtrAllocatorImpl< AllocatorT, SlabSize, SizeThreshold, GrowthDelay >::identifyObject(), llvm::detail::enumerator_result< std::size_t, Refs... >::index(), indexReallyValid(), llvm::dwarf::IndexString(), llvm::StructType::indexValid(), llvm::inFunctionScope(), llvm::TargetSchedModel::init(), INITIALIZE_PASS(), llvm::yaml::ScalarTraits< uuid_t >::input(), llvm::ImmutableGraph< NodeValueT, EdgeValueT >::EdgeSet::insert(), llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::insert(), llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::insert(), llvm::SparseSet< ValueT, KeyFunctorT, SparseT >::insert(), insert1BitVector(), InsertBitToMaskVector(), llvm::insertMultibyteShift(), llvm::SIInstrInfo::insertSelect(), insertUniqueBackedgeBlock(), llvm::fuzzerop::insertValueDescriptor(), llvm::GCNTTIImpl::instCombineIntrinsic(), llvm::PPCTTIImpl::instCombineIntrinsic(), llvm::X86TTIImpl::instCombineIntrinsic(), instCombineSVEDupqLane(), instCombineSVELast(), llvm::HexagonBlockRanges::InstrIndexMap::InstrIndexMap(), isBigEndian(), llvm::msf::MSFBuilder::isBlockFree(), llvm::SIInstrInfo::isBufferSMRD(), llvm::CallBase::isBundleOperand(), llvm::LandingPadInst::isCatch(), llvm::ShuffleVectorInst::isDeInterleaveMaskOfFactor(), isDeinterleavingMask(), IsElementEquivalent(), llvm::LandingPadInst::isFilter(), isFixedVectorShuffle(), isInterestingPHIIncomingValue(), isInterleavingMask(), isKnownNonZeroFromOperator(), llvm::ShuffleVectorInst::isOneUseSingleSourceMask(), llvm::CallBase::isOperandBundleOfType(), llvm::SplitAnalysis::isOriginalEndpoint(), isSafePHIToSpeculate(), isSimpleVIDSequence(), LiveDebugValues::MLocTracker::isSpill(), llvm::ShuffleVectorSDNode::isSplatMask(), llvm::SelectionDAG::isSplatValue(), llvm::AMDGPU::isSymbolicCustomOperandEncoding(), isUndef(), llvm::LiveRange::isUndefIn(), llvm::InlineAsm::Flag::isUseOperandTiedToDef(), isUZP_v_undef_Mask(), llvm::SuperRegClassIterator::isValid(), llvm::CodeViewContext::isValidFileNumber(), llvm::sandboxir::ExtractElementInst::isValidOperands(), llvm::sandboxir::InsertElementInst::isValidOperands(), isVUZP_v_undef_Mask(), isVZIP_v_undef_Mask(), isVZIPMask(), isZIP_v_undef_Mask(), llvm::isZIPMask(), llvm::SplitEditor::leaveIntvAfter(), llvm::SplitEditor::leaveIntvBefore(), llvm::SIInstrInfo::legalizeOperandsVOP3(), LLVMAddAttributeAtIndex(), LLVMAddCallSiteAttribute(), LLVMBuildStructGEP2(), LLVMGetAggregateElement(), LLVMGetAttributeCountAtIndex(), LLVMGetAttributesAtIndex(), LLVMGetCallBrIndirectDest(), LLVMGetCallSiteAttributeCount(), LLVMGetCallSiteAttributes(), LLVMGetCallSiteEnumAttribute(), LLVMGetCallSiteStringAttribute(), LLVMGetClause(), LLVMGetEnumAttributeAtIndex(), LLVMGetStringAttributeAtIndex(), LLVMGetTargetExtTypeIntParam(), LLVMGetTargetExtTypeTypeParam(), LLVMRemoveCallSiteEnumAttribute(), LLVMRemoveCallSiteStringAttribute(), LLVMRemoveEnumAttributeAtIndex(), LLVMRemoveStringAttributeAtIndex(), LLVMSetInstrParamAlignment(), llvm::coverage::CoverageMapping::load(), llvm::XtensaInstrInfo::loadImmediate(), llvm::XCoreInstrInfo::loadImmediate(), TransferTracker::loadInlocs(), loadM0FromVGPR(), llvm::OpenMPIRBuilder::loadOffloadInfoMetadata(), LiveDebugValues::MLocTracker::locIDToSpillIdx(), LiveDebugValues::MLocTracker::LocIdxToName(), llvm::Function::lookupIntrinsicID(), LowerBUILD_VECTORAsVariablePermute(), LowerBuildVectorOfFPExt(), LowerBuildVectorOfFPTrunc(), LowerCONCAT_VECTORSvXi1(), llvm::AArch64TargetLowering::lowerDeinterleaveIntrinsicToLoad(), llvm::LegalizerHelper::lowerExtract(), llvm::VETargetLowering::lowerEXTRACT_VECTOR_ELT(), LowerEXTRACT_VECTOR_ELT_SSE4(), llvm::LegalizerHelper::lowerExtractInsertVectorElt(), llvm::AMDGPUCallLowering::lowerFormalArguments(), llvm::ARMCallLowering::lowerFormalArguments(), llvm::MipsCallLowering::lowerFormalArguments(), llvm::X86CallLowering::lowerFormalArguments(), llvm::LoongArchTargetLowering::LowerFormalArguments(), llvm::RISCVTargetLowering::LowerFormalArguments(), llvm::LegalizerHelper::lowerInsert(), llvm::VETargetLowering::lowerINSERT_VECTOR_ELT(), llvm::AArch64TargetLowering::lowerInterleavedStore(), llvm::AArch64TargetLowering::lowerInterleaveIntrinsicToStore(), llvm::HexagonTargetLowering::LowerJumpTable(), lowerMSACopyIntr(), LowerMUL(), lowerShuffleAsBroadcast(), lowerShuffleAsRepeatedMaskAndLanePermute(), lowerShuffleAsSpecificZeroOrAnyExtend(), llvm::LegalizerHelper::lowerShuffleVector(), llvm::AMDGPUCallLowering::lowerTailCall(), llvm::LegalizerHelper::lowerVECTOR_COMPRESS(), lowerVECTOR_SHUFFLE(), lowerVECTOR_SHUFFLE_SHF(), lowerVECTOR_SHUFFLE_VSHF(), lowerVECTOR_SHUFFLE_VSHUF4I(), llvm::PatternMatch::m_ExtractElt(), llvm::PatternMatch::m_InsertElt(), llvm::SparcTargetLowering::makeAddress(), llvm::rdf::PhysicalRegisterInfo::mapTo(), llvm::dwarf_linker::classic::CompileUnit::markEverythingAsKept(), llvm::PatternMatch::AnyOps_match< Opcode, OperandTypes >::match_operands(), llvm::CombinerHelper::matchCombineFMinMaxNaN(), llvm::CombinerHelper::matchCombineShuffleVector(), llvm::CombinerHelper::matchCombineUnmergeConstant(), llvm::CombinerHelper::matchCombineUnmergeMergeToPlainValues(), llvm::CombinerHelper::matchCombineUnmergeUndef(), llvm::CombinerHelper::matchCombineUnmergeWithDeadLanesToTrunc(), llvm::CombinerHelper::matchExtractAllEltsFromBuildVector(), llvm::CombinerHelper::matchExtractVectorElementWithShuffleVector(), llvm::CombinerHelper::matchInsertExtractVecEltOutOfBounds(), matchScalarReduction(), matchShuffleAsEXTRQ(), matchShuffleAsINSERTQ(), matchSplatAsGather(), llvm::SIInstrInfo::materializeImmediate(), llvm::MCRegUnitMaskIterator::MCRegUnitMaskIterator(), LiveDebugValues::MLocTracker::MLocIterator::MLocIterator(), LiveDebugValues::MLocTracker::MLocTracker(), llvm::LegalizerHelper::moreElementsVector(), llvm::LegalizerHelper::moreElementsVectorShuffle(), llvm::SinkInstructionStrategy::mutate(), needsLFTR(), NextPossibleSolution(), llvm::Triple::normalize(), llvm::OperandBundleUse::operandHasAttr(), llvm::PackedVector< T, BitNum, BitVectorTy >::reference::operator T(), llvm::Module::debug_compile_units_iterator::operator!=(), llvm::HexagonBlockRanges::IndexType::operator!=(), llvm::orc::DumpObjects::operator()(), LiveDebugValues::MLocTracker::MLocIterator::operator*(), llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy >::operator*(), llvm::SuccIterator< InstructionT, BlockT >::operator*(), llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy >::operator++(), llvm::SuperRegClassIterator::operator++(), llvm::Module::debug_compile_units_iterator::operator++(), llvm::SSAUpdaterTraits< LDVSSAUpdater >::PHI_iterator::operator++(), LiveDebugValues::MLocTracker::MLocIterator::operator++(), llvm::SuccIterator< InstructionT, BlockT >::operator+=(), llvm::SuccIterator< InstructionT, BlockT >::operator-(), llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy >::operator--(), llvm::Module::debug_compile_units_iterator::operator->(), llvm::SuccIterator< InstructionT, BlockT >::operator<(), StackAccess::operator<(), llvm::HexagonBlockRanges::IndexType::operator<(), llvm::operator<<(), llvm::HexagonBlockRanges::IndexType::operator<=(), llvm::PackedVector< T, BitNum, BitVectorTy >::reference::operator=(), llvm::Module::debug_compile_units_iterator::operator==(), llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy >::operator==(), LiveDebugValues::MLocTracker::MLocIterator::operator==(), llvm::SSAUpdaterTraits< LDVSSAUpdater >::PHI_iterator::operator==(), llvm::SuccIterator< InstructionT, BlockT >::operator==(), llvm::HexagonBlockRanges::IndexType::operator==(), llvm::LazyCallGraph::RefSCC::operator[](), NodeArray::operator[](), llvm::BitVector::operator[](), llvm::PackedVector< T, BitNum, BitVectorTy >::operator[](), llvm::SmallBitVector::operator[](), llvm::PressureDiffs::operator[](), llvm::TypeFinder::operator[](), llvm::LiveIntervalUnion::Array::operator[](), llvm::User::OpFrom(), optimizeSection(), llvm::SystemZELFFrameLowering::orderFrameObjects(), outputHasNonPHI(), llvm::RISCVISAInfo::parseArchString(), llvm::AMDGPU::AMDGPUMCKernelCodeT::ParseKernelCodeT(), llvm::MetadataLoader::MetadataLoaderImpl::parseMetadataAttachment(), llvm::RISCVISAInfo::parseNormalizedArchString(), llvm::MCSectionMachO::ParseSectionSpecifier(), PerformARMBUILD_VECTORCombine(), performCopyPropagation(), PerformExtractEltCombine(), performExtractsShuffleAction(), performLastTrueTestVectorCombine(), llvm::ARMTargetLowering::PerformMVEExtCombine(), llvm::SystemZInstrInfo::prepareCompareSwapOperands(), llvm::gsym::GsymCreator::prepareMergedFunctions(), llvm::LiveIntervals::print(), llvm::RegisterBankInfo::OperandsMapper::print(), llvm::rdf::PhysicalRegisterInfo::print(), llvm::SDNode::print_details(), printFailMsgforFold(), llvm::printJumpTableEntryReference(), ParameterPack::printLeft(), llvm::PassManager< IRUnitT, AnalysisManagerT, ExtraArgTs >::printPipeline(), llvm::PassManager< Loop, LoopAnalysisManager, LoopStandardAnalysisResults &, LPMUpdater & >::printPipeline(), ParameterPack::printRight(), llvm::ConcurrentHashTableByPtr< KeyTy, KeyDataTy, AllocatorTy, Info >::printStatistic(), llvm::parallel::PerThreadAllocator< AllocatorTy >::PrintStats(), NodeArray::printWithComma(), llvm::AlignmentFromAssumptionsPass::processAssumption(), ProcessElementList(), llvm::processShuffleMasks(), promoteAllocaUserToVector(), llvm::LiveRange::Query(), readMemprof(), LiveDebugValues::MLocTracker::readReg(), llvm::sampleprof::SampleProfileReaderBinary::readSampleContextFromTable(), llvm::sampleprof::SampleProfileReaderExtBinaryBase::readSecHdrTableEntry(), llvm::pdb::readSparseBitVector(), llvm::sampleprof::SampleProfileReaderBinary::readStringFromTable(), llvm::sampleprof::SampleProfileReaderBinary::readStringIndex(), llvm::TargetInstrInfo::reassociateOps(), llvm::BuildVectorSDNode::recastRawBits(), llvm::LiveVariables::recomputeForSingleDefVirtReg(), llvm::LegalizerHelper::reduceLoadStoreWidth(), llvm::BitVector::reference::reference(), llvm::PackedVector< T, BitNum, BitVectorTy >::reference::reference(), llvm::RegisterBankInfo::RegisterBankInfo(), llvm::SchedBoundary::releaseNode(), llvm::orc::MachOBuilder< MachOTraits >::RelocTarget::RelocTarget(), rematerializeCheapDef(), llvm::dwarf_linker::parallel::CompileUnit::rememberDieOutOffset(), removeEmptyCleanup(), llvm::PHINode::removeIncomingValue(), llvm::sandboxir::PHINode::removeIncomingValue(), llvm::sandboxir::PHINode::removeIncomingValueIf(), llvm::PHINode::removeIncomingValueIf(), llvm::LazyCallGraph::RefSCC::removeInternalRefEdges(), llvm::MachineJumpTableInfo::RemoveJumpTable(), llvm::SIInstrInfo::removeModOperands(), removeSwitchAfterSelectFold(), llvm::slpvectorizer::BoUpSLP::reorderBottomToTop(), llvm::slpvectorizer::BoUpSLP::reorderTopToBottom(), ReorganizeVector(), llvm::RegBankSelect::repairReg(), replaceAndRecursivelySimplifyImpl(), replaceFallthroughCoroEnd(), replaceGEPIdxWithZero(), llvm::sandboxir::PHINode::replaceIncomingBlockWith(), llvm::MachineJumpTableInfo::ReplaceMBBInJumpTable(), llvm::RISCVTargetLowering::ReplaceNodeResults(), replacePhiSrc(), llvm::Instruction::replaceSuccessorWith(), replaceTargetsFromPHINode(), llvm::DbgVariableRecord::replaceVariableLocationOp(), llvm::DbgVariableIntrinsic::replaceVariableLocationOp(), llvm::parallel::PerThreadAllocator< AllocatorTy >::Reset(), llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::reset(), llvm::ImmutableGraph< NodeValueT, EdgeValueT >::EdgeSet::reset(), llvm::logicalview::LVProperties< T >::reset(), llvm::BitVector::reset(), llvm::SmallBitVector::reset(), llvm::SparseBitVectorElement< ElementSize >::reset(), llvm::SparseBitVector< ElementSize >::reset(), llvm::DebugValueUser::resetDebugValue(), AbstractManglingParser< Derived, Alloc >::resolveForwardTemplateRefs(), llvm::RuntimeDyldImpl::resolveLocalRelocations(), returnEdge(), llvm::sandboxir::PHIRemoveIncoming::revert(), llvm::sandboxir::GenericSetterWithIdx< GetterFn, SetterFn >::revert(), llvm::StringRef::rsplit(), llvm::WindowScheduler::run(), llvm::AlignmentFromAssumptionsPass::runImpl(), scalarize(), scalarizeMaskedCompressStore(), scalarizeMaskedExpandLoad(), scalarizeMaskedGather(), scalarizeMaskedLoad(), scalarizeMaskedScatter(), scalarizeMaskedStore(), scalarizeMaskedVectorHistogram(), llvm::TargetLowering::scalarizeVectorLoad(), llvm::TargetLowering::scalarizeVectorStore(), llvm::RISCVDAGToDAGISel::Select(), llvm::SelectionDAGISel::SelectCodeCommon(), llvm::HexagonDAGToDAGISel::SelectExtractSubvector(), llvm::HvxSelector::selectExtractSubvector(), llvm::FastISel::selectGetElementPtr(), llvm::SplitEditor::selectIntv(), llvm::HvxSelector::selectShuffle(), llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::set(), llvm::ImmutableGraph< NodeValueT, EdgeValueT >::EdgeSet::set(), llvm::logicalview::LVProperties< T >::set(), llvm::BitVector::set(), llvm::SmallBitVector::set(), llvm::SparseBitVectorElement< ElementSize >::set(), llvm::SparseBitVector< ElementSize >::set(), llvm::sandboxir::FuncletPadInst::setArgOperand(), llvm::PPCFunctionInfo::setBasePointerSaveIndex(), LiveDebugValues::DbgValue::setDbgOpIDs(), llvm::dwarf_linker::parallel::CompileUnit::setDieTypeEntry(), llvm::PPCFunctionInfo::setFramePointerSaveIndex(), llvm::SystemZMachineFunctionInfo::setFramePointerSaveIndex(), llvm::R600InstrInfo::setImmOperand(), llvm::sandboxir::PHINode::setIncomingBlock(), llvm::sandboxir::PHINode::setIncomingValue(), llvm::mca::MCAOperand::setIndex(), llvm::MachineOperand::setIndex(), llvm::sandboxir::CallBrInst::setIndirectDest(), llvm::AArch64FunctionInfo::setJumpTableEntryInfo(), false::Chain::setKill(), llvm::SuffixTreeNode::setLeftLeafIdx(), setM0ToIndexFromSGPR(), llvm::IRSimilarity::IRInstructionData::setPHIPredecessors(), llvm::PPCFunctionInfo::setPICBasePointerSaveIndex(), llvm::parallel::PerThreadAllocator< AllocatorTy >::setRedZoneSize(), LiveDebugValues::MLocTracker::setReg(), llvm::X86MachineFunctionInfo::setRegSaveFrameIndex(), llvm::SuffixTreeNode::setRightLeafIdx(), llvm::PPCFunctionInfo::setROPProtectionHashSaveIndex(), llvm::DWARFDebugInfoEntry::setSiblingIdx(), llvm::msf::MSFBuilder::setStreamSize(), llvm::CatchSwitchInst::setSuccessor(), llvm::sandboxir::BranchInst::setSuccessor(), llvm::sandboxir::CatchSwitchInst::setSuccessor(), llvm::sandboxir::SwitchInst::setSuccessor(), llvm::SuffixTreeLeafNode::setSuffixIdx(), llvm::PackedVectorBase< T, BitNum, BitVectorTy, false >::setValue(), llvm::PackedVectorBase< T, BitNum, BitVectorTy, true >::setValue(), llvm::AVRMachineFunctionInfo::setVarArgsFrameIndex(), llvm::X86MachineFunctionInfo::setVarArgsFrameIndex(), llvm::AArch64FunctionInfo::setVGIdx(), shortBundleName(), llvm::pdb::shouldDumpSymbolGroup(), llvm::SITargetLowering::shouldExpandVectorDynExt(), llvm::AArch64TargetLowering::shouldSinkOperands(), llvm::TailDuplicator::shouldTailDuplicate(), shouldTryInjectBasingOnMetadata(), llvm::LiveIntervals::shrinkToUses(), llvm::TargetLowering::SimplifyDemandedBits(), llvm::X86TargetLowering::SimplifyDemandedBitsForTargetNode(), llvm::TargetLowering::SimplifyDemandedVectorElts(), llvm::InstCombinerImpl::SimplifyDemandedVectorElts(), llvm::X86TTIImpl::simplifyDemandedVectorEltsIntrinsic(), llvm::simplifyExtractElementInst(), simplifyExtractElementInst(), simplifyGEPInst(), llvm::simplifyInsertElementInst(), simplifyIntrinsic(), llvm::simplifyLoop(), llvm::TargetLowering::SimplifyMultipleUseDemandedBits(), simplifyReductionOperand(), simplifyX86varShift(), sinkCommonCodeFromPredecessors(), llvm::SIRegisterInfo::SIRegisterInfo(), slotForIndex(), llvm::sortPtrAccesses(), llvm::SparseBitVectorElement< ElementSize >::SparseBitVectorElement(), speculatePHINodeLoads(), llvm::StringRef::split(), splitAsyncCoroutine(), llvm::SplitBlockAndInsertForEachLane(), llvm::SplitEditor::splitLiveThroughBlock(), llvm::SplitEditor::splitRegInBlock(), llvm::SplitEditor::splitRegOutBlock(), SubIdx2Lane(), llvm::SuccIterator< InstructionT, BlockT >::SuccIterator(), llvm::SuperRegClassIterator::SuperRegClassIterator(), llvm::Instruction::swapProfMetadata(), llvm::LazyCallGraph::RefSCC::switchInternalEdgeToRef(), switchToLookupTable(), llvm::BTFParser::symbolize(), targetParallelCallback(), llvm::BitVector::test(), llvm::SmallBitVector::test(), llvm::SparseBitVectorElement< ElementSize >::test(), llvm::SparseBitVector< ElementSize >::test(), llvm::StackLifetime::LiveRange::test(), llvm::SparseBitVectorElement< ElementSize >::test_and_set(), llvm::SparseBitVector< ElementSize >::test_and_set(), llvm::rdf::RegisterRef::toUnitId(), llvm::DbgValueHistoryMap::trimLocationRanges(), llvm::VPlanTransforms::truncateToMinimalBitwidths(), llvm::LegalizationArtifactCombiner::tryCombineUnmergeValues(), tryCombineWhileLo(), llvm::LegalizationArtifactCombiner::tryFoldUnmergeCast(), trySequenceOfOnes(), tryToreplicateChunks(), llvm::coverage::mcdc::TVIdxBuilder::TVIdxBuilder(), llvm::JumpThreadingPass::unfoldSelectInstr(), llvm::UnrollLoop(), llvm::DominatorTreeBase< NodeT, IsPostDom >::updateBlockNumbers(), updateBranchWeights(), updateImm(), updateOperand(), updateOperandRegConstraints(), UpdatePHINodes(), llvm::UpgradeIntrinsicCall(), upgradeX86ALIGNIntrinsics(), upgradeX86IntrinsicFunction(), upgradeX86PSLLDQIntrinsics(), upgradeX86PSRLDQIntrinsics(), ValidateMVEStore(), llvm::slpvectorizer::BoUpSLP::vectorizeTree(), llvm::RegisterBankInfo::InstructionMapping::verify(), llvm::RegisterBankInfo::verify(), llvm::gsym::DwarfTransformer::verify(), llvm::misexpect::verifyMisExpect(), llvm::InstCombinerImpl::visitCallInst(), llvm::InstCombinerImpl::visitExtractElementInst(), llvm::InstCombinerImpl::visitExtractValueInst(), llvm::InstCombinerImpl::visitGEPOfGEP(), llvm::InstCombinerImpl::visitShuffleVectorInst(), LiveDebugValues::MLocTracker::wipeRegister(), llvm::SparseBitVectorElement< ElementSize >::word(), llvm::raw_ostream::write_uuid(), llvm::pdb::writeSparseBitVector(), and llvm::ConcurrentHashTableByPtr< KeyTy, KeyDataTy, AllocatorTy, Info >::~ConcurrentHashTableByPtr().

◆ live

Checks Use for liveness in LiveValues If Use is not live

Definition at line 363 of file DeadArgumentElimination.cpp.

Referenced by findBasePointers().

◆ Live

Looks at all the uses of the given value Returns the Liveness deduced from the uses of this value Adds all uses that cause the result to be MaybeLive to MaybeLiveRetUses If the result is Live

◆ MaybeLive

Marks the liveness of RA depending on L If L is MaybeLive

Definition at line 657 of file DeadArgumentElimination.cpp.

◆ recursion

Looks at a single use of an argument or return value and determines if it should be alive or not Adds this use to MaybeLiveUses if it causes the used value to become MaybeLive RetValNum is the return value number to use when this use is used in a return instruction This is used in the recursion

Definition at line 383 of file DeadArgumentElimination.cpp.

◆ RetTy

return RetTy

Definition at line 360 of file DeadArgumentElimination.cpp.

Referenced by llvm::MipsCCState::AnalyzeCallResult(), convertStrToInt(), llvm::LandingPadInst::Create(), createAtomicLibcall(), llvm::DIBuilder::createForwardDecl(), llvm::RandomIRBuilder::createFunctionDefinition(), llvm::VFABI::createFunctionType(), llvm::IRBuilderBase::CreateIntrinsic(), llvm::dxil::DXILOpBuilder::createOp(), llvm::DIBuilder::createReplaceableCompositeType(), createRetBitCast(), doPromotion(), llvm::AArch64SelectionDAGInfo::EmitStreamingCompatibleMemLibCall(), fixFunctionTypeIfPtrArgs(), llvm::InstSimplifyFolder::FoldShuffleVector(), llvm::generateImageSizeQueryInst(), llvm::TargetLoweringBase::getBitWidthForCttzElements(), llvm::HexagonTTIImpl::getCallInstrCost(), llvm::TargetTransformInfo::getCallInstrCost(), getFunctionReturns(), llvm::LoopVectorizationCostModel::getInstructionCost(), llvm::BasicTTIImplBase< T >::getIntrinsicInstrCost(), llvm::AArch64TTIImpl::getIntrinsicInstrCost(), llvm::GCNTTIImpl::getIntrinsicInstrCost(), llvm::ARMTTIImpl::getIntrinsicInstrCost(), llvm::RISCVTTIImpl::getIntrinsicInstrCost(), llvm::X86TTIImpl::getIntrinsicInstrCost(), getOrCreateFunction(), getOriginalFunctionType(), llvm::Module::getOrInsertFunction(), llvm::getOrInsertLibFunc(), llvm::CallLowering::getReturnInfo(), llvm::IntrinsicCostAttributes::getReturnType(), llvm::BasicTTIImplBase< T >::getScalarizationOverhead(), llvm::AArch64TargetLowering::getTgtMemIntrinsic(), llvm::BasicTTIImplBase< T >::getTypeBasedIntrinsicInstrCost(), llvm::LoopVectorizationCostModel::getVectorCallCost(), llvm::LoopVectorizationCostModel::getVectorIntrinsicCost(), getVectorIntrinsicInstrCost(), llvm::CallLowering::insertSRetLoads(), llvm::CallLowering::insertSRetOutgoingArgument(), llvm::CallLowering::insertSRetStores(), instCombineSVEDupX(), instCombineSVENoActiveUnaryZero(), instCombineSVEUnpack(), instCombineSVEUzp1(), llvm::FunctionType::isValidReturnType(), llvm::ARMLegalizerInfo::legalizeCustom(), llvm::SelectionDAGBuilder::LowerAsSTATEPOINT(), llvm::NVPTXTargetLowering::LowerCall(), llvm::FastISel::lowerCall(), llvm::CallLowering::lowerCall(), llvm::SelectionDAGBuilder::LowerCallTo(), llvm::FastISel::lowerCallTo(), llvm::VETargetLowering::lowerDYNAMIC_STACKALLOC(), llvm::SparcTargetLowering::LowerF128Compare(), llvm::SparcTargetLowering::LowerF128Op(), llvm::SPIRVCallLowering::lowerFormalArguments(), LowerFSINCOS(), llvm::NVPTXTargetLowering::LowerReturn(), llvm::SelectionDAGBuilder::LowerStatepoint(), llvm::SystemZTargetLowering::makeExternalCall(), llvm::TargetLowering::makeLibCall(), numRetVals(), PerformVECREDUCE_ADDCombine(), llvm::MipsCCState::PreAnalyzeCallResult(), ReplaceCallWith(), replaceFallthroughCoroEnd(), llvm::MCJIT::runFunction(), llvm::LoopVectorizationCostModel::setVectorizedCallDecision(), simplifyFCmpInst(), simplifyIntrinsic(), llvm::simplifyShuffleVectorInst(), simplifyShuffleVectorInst(), simplifyX86addcarry(), splitRetconCoroutine(), llvm::toTypedFunPointer(), llvm::dxil::DXILOpBuilder::tryCreateOp(), upgradeAMDGCNIntrinsicCall(), llvm::UpgradeIntrinsicCall(), llvm::InstCombinerImpl::visitCallInst(), and llvm::Interpreter::visitReturnInst().

◆ Uses

Marks the liveness of RA depending on L If L is it also takes all uses in MaybeLiveUses and records them in Uses

Definition at line 658 of file DeadArgumentElimination.cpp.

◆ value

Given that RA is a live value
Examples
/home/buildbot/as-worker-4/publish-doxygen-docs/llvm-project/llvm/include/llvm/ADT/ilist_node.h.

Definition at line 715 of file DeadArgumentElimination.cpp.

Referenced by AddNodeIDCustom(), llvm::detail::all_of_zip_predicate_last(), llvm::applyPPCha(), llvm::applyPPChi(), llvm::applyPPChigher(), llvm::applyPPChighera(), llvm::applyPPChighest(), llvm::applyPPChighesta(), llvm::applyPPClo(), llvm::json::OStream::attribute(), buildFrameDebugInfo(), llvm::support::endian::byte_swap(), dofwd(), llvm::pdb::DIARawSymbol::dump(), llvm::OptimizationRemarkEmitter::emit(), llvm::BCGenericRecordLayout< IDField, Fields >::emitRecord(), llvm::yaml::ScalarEnumerationTraits< MachO::BindOpcode >::enumeration(), llvm::yaml::ScalarEnumerationTraits< MachO::LoadCommandType >::enumeration(), llvm::yaml::ScalarEnumerationTraits< MachO::RebaseOpcode >::enumeration(), llvm::yaml::ScalarEnumerationTraits< TypeTestResolution::Kind >::enumeration(), llvm::yaml::ScalarEnumerationTraits< WholeProgramDevirtResolution::ByArg::Kind >::enumeration(), llvm::yaml::ScalarEnumerationTraits< WholeProgramDevirtResolution::Kind >::enumeration(), llvm::hashing::detail::get_hashable_data(), getExecutionModel(), llvm::AMDGPU::HSAMD::MetadataStreamerMsgPackV4::getHSAKernelProps(), GetOptionalAbsDifference(), getSystemRegistryString(), llvm::DataLayout::getTypeAllocSize(), llvm::ImutAVLTree< ImutInfo >::getValue(), llvm::X86FrameLowering::getWin64EHFrameIndexRef(), llvm::hash_code::hash_code(), llvm::hashing::detail::hash_integer_value(), llvm::hash_value(), llvm::detail::IEEEFloat::IEEEFloat(), llvm::cl::list_storage< DataType, bool >::insert(), llvm::IntervalMapImpl::LeafNode< KeyT, ValT, N, Traits >::insertFrom(), llvm::ELFAttributeParser::integerAttribute(), llvm::sys::path::is_separator(), llvm::msf::MSFError::isPageOverflow(), llvm::CastInfoPointerUnionImpl< PTs >::isPossible(), llvm::AArch64_AM::isSVEAddSubImm(), llvm::jitTargetAddressToFunction(), LLVMSetArgOperand(), llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::MCPseudoProbeInlineTreeBase(), llvm::hash_code::operator size_t(), llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator::operator*(), llvm::gsym::OutputAggregator::operator<<(), p_b_symbol(), llvm::ELFAttributeParser::parseIndexList(), parseInt(), llvm::ELFAttributeParser::parseStringAttribute(), llvm::GenericUniformityAnalysisImpl< ContextT >::print(), llvm::ELFAttributeParser::printAttribute(), FloatLiteralImpl< Float >::printLeft(), llvm::cl::list_storage< DataType, bool >::push_back(), llvm::readExponent(), llvm::BCGenericRecordLayout< IDField, Fields >::readRecord(), llvm::IntervalMapImpl::LeafNode< KeyT, ValT, N, Traits >::safeLookup(), llvm::ELFAttributeParser::setAttributeString(), llvm::ARCFunctionInfo::setReturnStackOffset(), llvm::XCoreFunctionInfo::setReturnStackOffset(), llvm::IntervalMap< KeyT, ValT, N, Traits >::iterator::setStart(), llvm::IntervalMap< KeyT, ValT, N, Traits >::iterator::setStop(), llvm::hashing::detail::store_and_advance(), llvm::object::detail::swapBytes(), llvm::totalExponent(), llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator::unsafeValue(), llvm::json::OStream::value(), llvm::support::endian::write(), llvm::support::endian::write< double >(), llvm::support::endian::write< float >(), llvm::support::endian::write_array(), llvm::support::endian::writeAtBitAlignment(), llvm::support::endian::writeNext(), and llvm::writeSignedDecimal().