LLVM 19.0.0git
Macros | Functions | Variables
AArch64AdvSIMDScalarPass.cpp File Reference
#include "AArch64.h"
#include "AArch64InstrInfo.h"
#include "AArch64RegisterInfo.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "aarch64-simd-scalar"
 
#define AARCH64_ADVSIMD_NAME   "AdvSIMD Scalar Operation Optimization"
 

Functions

 STATISTIC (NumScalarInsnsUsed, "Number of scalar instructions used")
 
 STATISTIC (NumCopiesDeleted, "Number of cross-class copies deleted")
 
 STATISTIC (NumCopiesInserted, "Number of cross-class copies inserted")
 
 INITIALIZE_PASS (AArch64AdvSIMDScalar, "aarch64-simd-scalar", AARCH64_ADVSIMD_NAME, false, false) static bool isGPR64(unsigned Reg
 
 if (Register::isVirtualRegister(Reg)) return MRI -> getRegClass(Reg) ->hasSuperClassEq(&AArch64::GPR64RegClass)
 
return AArch64::GPR64RegClass contains (Reg)
 
static bool isFPR64 (unsigned Reg, unsigned SubReg, const MachineRegisterInfo *MRI)
 
static MachineOperandgetSrcFromCopy (MachineInstr *MI, const MachineRegisterInfo *MRI, unsigned &SubReg)
 
static unsigned getTransformOpcode (unsigned Opc)
 
static bool isTransformable (const MachineInstr &MI)
 
static MachineInstrinsertCopy (const TargetInstrInfo *TII, MachineInstr &MI, unsigned Dst, unsigned Src, bool IsKill)
 

Variables

static cl::opt< boolTransformAll ("aarch64-simd-scalar-force-all", cl::desc("Force use of AdvSIMD scalar instructions everywhere"), cl::init(false), cl::Hidden)
 
unsigned SubReg
 
unsigned const MachineRegisterInfoMRI
 

Macro Definition Documentation

◆ AARCH64_ADVSIMD_NAME

#define AARCH64_ADVSIMD_NAME   "AdvSIMD Scalar Operation Optimization"

Definition at line 62 of file AArch64AdvSIMDScalarPass.cpp.

◆ DEBUG_TYPE

#define DEBUG_TYPE   "aarch64-simd-scalar"

Definition at line 49 of file AArch64AdvSIMDScalarPass.cpp.

Function Documentation

◆ contains()

return AArch64::GPR64RegClass contains ( Reg  )

Referenced by isFPR64().

◆ getSrcFromCopy()

static MachineOperand * getSrcFromCopy ( MachineInstr MI,
const MachineRegisterInfo MRI,
unsigned SubReg 
)
static

Definition at line 127 of file AArch64AdvSIMDScalarPass.cpp.

References isFPR64(), MI, MRI, and SubReg.

◆ getTransformOpcode()

static unsigned getTransformOpcode ( unsigned  Opc)
static

Definition at line 164 of file AArch64AdvSIMDScalarPass.cpp.

Referenced by isTransformable().

◆ if()

if ( Register::isVirtualRegister(Reg ) -> getRegClass(Reg) ->hasSuperClassEq(&AArch64::GPR64RegClass)

◆ INITIALIZE_PASS()

INITIALIZE_PASS ( AArch64AdvSIMDScalar  ,
"aarch64-simd-scalar"  ,
AARCH64_ADVSIMD_NAME  ,
false  ,
false   
)

◆ insertCopy()

static MachineInstr * insertCopy ( const TargetInstrInfo TII,
MachineInstr MI,
unsigned  Dst,
unsigned  Src,
bool  IsKill 
)
static

◆ isFPR64()

static bool isFPR64 ( unsigned  Reg,
unsigned  SubReg,
const MachineRegisterInfo MRI 
)
static

Definition at line 113 of file AArch64AdvSIMDScalarPass.cpp.

References contains(), llvm::Register::isVirtualRegister(), MRI, and SubReg.

Referenced by getSrcFromCopy().

◆ isTransformable()

static bool isTransformable ( const MachineInstr MI)
static

Definition at line 184 of file AArch64AdvSIMDScalarPass.cpp.

References getTransformOpcode(), and MI.

◆ STATISTIC() [1/3]

STATISTIC ( NumCopiesDeleted  ,
"Number of cross-class copies deleted"   
)

◆ STATISTIC() [2/3]

STATISTIC ( NumCopiesInserted  ,
"Number of cross-class copies inserted"   
)

◆ STATISTIC() [3/3]

STATISTIC ( NumScalarInsnsUsed  ,
"Number of scalar instructions used"   
)

Variable Documentation

◆ MRI

Initial value:
{
if (SubReg)
return false
unsigned SubReg

Definition at line 105 of file AArch64AdvSIMDScalarPass.cpp.

Referenced by llvm::AliasSetTracker::add(), addCalleeSavedRegs(), addConstantsToTrack(), llvm::DstOp::addDefToMIB(), addHints(), llvm::SITargetLowering::AddIMGInit(), addImplicitDefs(), llvm::RegsForValue::AddInlineAsmOperands(), addInstrRequirements(), llvm::PressureDiffs::addInstruction(), llvm::MachineBasicBlock::addLiveIn(), llvm::MachineFunction::addLiveIn(), llvm::addLiveIns(), llvm::AMDGPURegisterBankInfo::addMappingFromTable(), llvm::MachineInstr::addOperand(), llvm::PressureDiff::addPressureChange(), adjustAllocatableRegClass(), AdjustBaseAndOffset(), llvm::ARMFrameLowering::adjustForSegmentedStacks(), llvm::SITargetLowering::AdjustInstrPostInstrSelection(), llvm::RegisterOperands::adjustLaneLiveness(), llvm::RISCVRegisterInfo::adjustReg(), llvm::RegPressureTracker::advance(), llvm::GISelAddressing::aliasIsKnownForLoadStore(), llvm::SITargetLowering::allocateHSAUserSGPRs(), allocateHSAUserSGPRs(), llvm::SITargetLowering::allocateSpecialEntryInputVGPRs(), llvm::SIMachineFunctionInfo::allocateVGPRSpillToAGPR(), allPhiOperandsUndefined(), allUsesHaveSourceMods(), llvm::AArch64InstrInfo::analyzeLoopForPipelining(), llvm::ARMBaseInstrInfo::analyzeLoopForPipelining(), llvm::PPCInstrInfo::analyzeLoopForPipelining(), llvm::AnalyzeVirtRegLanesInBundle(), llvm::RegisterBankInfo::applyDefaultMapping(), llvm::AMDGPURegisterBankInfo::applyMappingBFE(), llvm::AMDGPURegisterBankInfo::applyMappingDynStackAlloc(), llvm::AMDGPURegisterBankInfo::applyMappingImpl(), llvm::MipsRegisterBankInfo::applyMappingImpl(), llvm::AMDGPURegisterBankInfo::applyMappingLoad(), llvm::AMDGPURegisterBankInfo::applyMappingMAD_64_32(), llvm::AMDGPURegisterBankInfo::applyMappingSBufferLoad(), llvm::AMDGPURegisterBankInfo::applyMappingSMULU64(), llvm::AMDGPUCallLowering::areCalleeOutgoingArgsTailCallable(), llvm::ARMAsmBackendDarwin::ARMAsmBackendDarwin(), llvm::LegalizationArtifactCombiner::ArtifactValueFinder::ArtifactValueFinder(), llvm::PPCFrameLowering::assignCalleeSavedSpillSlots(), llvm::CallLowering::IncomingValueHandler::assignValueToReg(), attachMEMCPYScratchRegs(), attemptDebugCopyProp(), llvm::LivePhysRegs::available(), llvm::MIPatternMatch::bind_helper< const ConstantFP * >::bind(), llvm::MIPatternMatch::bind_helper< LLT >::bind(), llvm::MIPatternMatch::bind_helper< MachineInstr * >::bind(), blockPrologueInterferes(), llvm::rdf::DataFlowGraph::build(), llvm::AMDGPULegalizerInfo::buildAbsGlobalAddress(), buildAddr64RSrc(), buildAnyextOrCopy(), llvm::buildAtomicCompareExchangeInst(), llvm::buildAtomicFlagInst(), llvm::buildAtomicFloatingRMWInst(), llvm::buildAtomicRMWInst(), llvm::buildBarrierInst(), buildCopyFromRegs(), buildCopyToRegs(), buildDefCFAReg(), llvm::SPIRVGeneralDuplicatesTracker::buildDepsGraph(), llvm::buildEnqueueKernel(), llvm::CallLowering::IncomingValueHandler::buildExtensionHint(), llvm::SIInstrInfo::buildExtractSubReg(), llvm::SIInstrInfo::buildExtractSubRegOrImm(), llvm::SPIRVGlobalRegistry::buildGlobalVariable(), llvm::buildLoadInst(), buildLogBase2(), llvm::buildMemSemanticsReg(), llvm::buildNDRange(), buildOffsetSrc(), llvm::AArch64InstrInfo::buildOutlinedFrame(), llvm::AMDGPURegisterBankInfo::buildReadFirstLane(), buildRegSequence(), buildRSRC(), llvm::buildScopeReg(), buildScratchExecCopy(), llvm::AMDGPURegisterBankInfo::buildVCopy(), llvm::RegPressureTracker::bumpDownwardPressure(), llvm::RegPressureTracker::bumpUpwardPressure(), llvm::LiveIntervalCalc::calculate(), llvm::VirtRegAuxInfo::calculateSpillWeightsAndHints(), canCombine(), canCombineFPFusedMultiply(), canCompareBeNewValueJump(), canEmitConjunction(), canFoldAsPredicatedOp(), canFoldCopy(), canFoldInAddressingMode(), llvm::AArch64InstrInfo::canFoldIntoAddrMode(), canFoldIntoCSel(), canFoldIntoSelect(), llvm::AArch64InstrInfo::canInsertSelect(), llvm::PPCInstrInfo::canInsertSelect(), llvm::SystemZInstrInfo::canInsertSelect(), llvm::X86InstrInfo::canInsertSelect(), llvm::SIInstrInfo::canInsertSelect(), canMemFoldInlineAsm(), canMutatePriorConfig(), llvm::ARMBaseRegisterInfo::canRealignStack(), llvm::LoongArchRegisterInfo::canRealignStack(), llvm::M68kRegisterInfo::canRealignStack(), llvm::X86RegisterInfo::canRealignStack(), llvm::canReplaceReg(), llvm::SIInstrInfo::canShrink(), llvm::canSinkOrHoistInst(), llvm::AArch64FrameLowering::canUseAsPrologue(), castBufferRsrcFromV4I32(), castBufferRsrcToV4I32(), llvm::MachineInstr::changeDebugValuesDefReg(), llvm::GISelChangeObserver::changingAllUsesOfReg(), checkFnHasLiveInYmmOrZmm(), llvm::checkVOPDRegConstraints(), llvm::X86_MC::X86MCInstrAnalysis::clearsSuperRegisters(), llvm::RegisterOperands::collect(), collectHWRegs(), collectVirtualRegUses(), llvm::AMDGPURegisterBankInfo::collectWaterfallOperands(), CombineCVTAToLocal(), combineFPFusedMultiply(), llvm::PPCInstrInfo::combineRLWINM(), llvm::HexagonBlockRanges::computeDeadMap(), computeIndirectRegIndex(), computeInfoForInstr(), llvm::SITargetLowering::computeKnownAlignForTargetInstr(), llvm::SITargetLowering::computeKnownBitsForTargetInstr(), llvm::computeLiveIns(), computeLiveOuts(), llvm::AMDGPUTargetLowering::computeNumSignBitsForTargetInstr(), llvm::LiveInterval::computeSubRangeUndefs(), computeWeight(), llvm::ConstantFoldBinOp(), llvm::ConstantFoldCastOp(), llvm::ConstantFoldCTLZ(), llvm::ConstantFoldExtOp(), llvm::ConstantFoldFPBinOp(), constantFoldFpUnary(), llvm::ConstantFoldIntToFloat(), llvm::ConstantFoldVectorBinop(), llvm::RegisterBankInfo::constrainGenericRegister(), llvm::constrainOperandRegClass(), llvm::AMDGPURegisterBankInfo::constrainOpWithReadfirstlane(), constrainRegClass(), constrainRegToBank(), llvm::constrainRegToClass(), llvm::constrainSelectedInstRegOperands(), llvm::mca::Context::Context(), convertImplicitDefToConstZero(), llvm::SIInstrInfo::convertNonUniformIfRegion(), llvm::SIInstrInfo::convertNonUniformLoopRegion(), convertPtrToInt(), llvm::PPCInstrInfo::convertToImmediateForm(), llvm::SIInstrInfo::convertToThreeAddress(), llvm::CallLowering::ValueHandler::copyArgumentMemory(), llvm::VirtRegAuxInfo::copyHint(), llvm::NVPTXInstrInfo::copyPhysReg(), llvm::SPIRVInstrInfo::copyPhysReg(), llvm::WebAssemblyInstrInfo::copyPhysReg(), copySubReg(), llvm::createAArch64leAsmBackend(), createAArch64MCAsmInfo(), createAArch64MCInstPrinter(), createAMDGPUMCInstPrinter(), createARCMCInstPrinter(), createARMAsmBackend(), llvm::createARMBEAsmBackend(), llvm::createARMLEAsmBackend(), createARMMCAsmInfo(), createARMMCInstPrinter(), createAVRMCInstPrinter(), createBBSelectReg(), createBPFMCInstPrinter(), createCSKYMCAsmInfo(), createCSKYMCInstPrinter(), llvm::LiveIntervalCalc::createDeadDefs(), createDXILMCInstPrinter(), createHexagonMCAsmInfo(), createHexagonMCInstPrinter(), createLanaiMCInstPrinter(), llvm::createLaneMaskReg(), llvm::AMDGPUTargetLowering::CreateLiveInRegister(), createLoongArchMCAsmInfo(), createLoongArchMCInstPrinter(), createM68kMCAsmInfo(), createM68kMCInstPrinter(), llvm::Target::createMCAsmBackend(), llvm::Target::createMCAsmInfo(), createMCInstPrinter(), llvm::Target::createMCInstPrinter(), llvm::createMemLibcall(), llvm::createMipsAsmBackend(), createMipsMCAsmInfo(), createMipsMCInstPrinter(), createMSP430MCAsmInfo(), createMSP430MCInstPrinter(), createNewIdReg(), createNVPTXMCInstPrinter(), createPostIncLoadStore(), createPPCMCAsmInfo(), createPPCMCInstPrinter(), createRISCVMCAsmInfo(), createRISCVMCInstPrinter(), createSparcMCAsmInfo(), createSparcMCInstPrinter(), createSparcV9MCAsmInfo(), createSPIRVMCInstPrinter(), createSystemZMCAsmInfo(), createSystemZMCInstPrinter(), createTypeVReg(), createVEMCAsmInfo(), createVEMCInstPrinter(), llvm::HexagonInstrInfo::createVR(), llvm::RegisterBankInfo::OperandsMapper::createVRegs(), llvm::createX86_32AsmBackend(), llvm::createX86_64AsmBackend(), createX86MCAsmInfo(), createX86MCInstPrinter(), createXCoreMCInstPrinter(), createXtensaMCInstPrinter(), cvtVOP3DstOpSelOnly(), llvm::DeadLaneDetector::DeadLaneDetector(), decodeAVLdSt(), decreaseSetPressure(), llvm::ShapeT::deduceImm(), definedBySignExtendingOp(), definedByZeroExtendingOp(), llvm::AArch64FrameLowering::determineCalleeSaves(), llvm::ARMFrameLowering::determineCalleeSaves(), llvm::CSKYFrameLowering::determineCalleeSaves(), llvm::HexagonFrameLowering::determineCalleeSaves(), llvm::TargetFrameLowering::determineCalleeSaves(), llvm::XCoreFrameLowering::determineCalleeSaves(), llvm::SIFrameLowering::determineCalleeSavesSGPR(), llvm::SIFrameLowering::determinePrologEpilogSGPRSaves(), llvm::RegPressureTracker::discoverLiveInOrOut(), llvm::ConnectedVNInfoEqClasses::Distribute(), dominatesAllUsesOf(), llvm::MachineInstr::dumpr(), llvm::HexagonRegisterInfo::eliminateFrameIndex(), llvm::CSKYRegisterInfo::eliminateFrameIndex(), llvm::LoongArchRegisterInfo::eliminateFrameIndex(), llvm::RISCVRegisterInfo::eliminateFrameIndex(), llvm::WebAssemblyRegisterInfo::eliminateFrameIndex(), llvm::MSP430FrameLowering::emitCalleeSavedFrameMoves(), llvm::X86FrameLowering::emitCalleeSavedFrameMoves(), llvm::X86FrameLowering::emitCalleeSavedFrameMovesFullCFA(), emitCallSPUpdate(), llvm::PPCTargetLowering::emitEHSjLjLongJmp(), llvm::VETargetLowering::emitEHSjLjLongJmp(), llvm::PPCTargetLowering::emitEHSjLjSetJmp(), llvm::VETargetLowering::emitEHSjLjSetJmp(), llvm::SIFrameLowering::emitEntryFunctionPrologue(), llvm::SIFrameLowering::emitEpilogue(), llvm::WebAssemblyFrameLowering::emitEpilogue(), emitFROUND(), llvm::SITargetLowering::emitGWSMemViolTestLoop(), emitIndirectDst(), emitIndirectSrc(), llvm::R600TargetLowering::EmitInstrWithCustomInserter(), llvm::SITargetLowering::EmitInstrWithCustomInserter(), llvm::ARMTargetLowering::EmitInstrWithCustomInserter(), llvm::PPCTargetLowering::EmitInstrWithCustomInserter(), llvm::X86TargetLowering::EmitInstrWithCustomInserter(), llvm::AArch64InstrInfo::emitLdStWithAddr(), emitLoadFromConstantPool(), emitLoadM0FromVGPRLoop(), emitLoadScalarOpsFromVGPRLoop(), llvm::PPCTargetLowering::emitProbedAlloca(), llvm::SIFrameLowering::emitPrologue(), llvm::ARCFrameLowering::emitPrologue(), llvm::ARMFrameLowering::emitPrologue(), llvm::Thumb1FrameLowering::emitPrologue(), llvm::AVRFrameLowering::emitPrologue(), llvm::CSKYFrameLowering::emitPrologue(), llvm::Mips16FrameLowering::emitPrologue(), llvm::MipsSEFrameLowering::emitPrologue(), llvm::PPCFrameLowering::emitPrologue(), llvm::SystemZELFFrameLowering::emitPrologue(), llvm::WebAssemblyFrameLowering::emitPrologue(), llvm::XCoreFrameLowering::emitPrologue(), emitPrologueEpilogueSPUpdate(), emitPseudoXVINSGR2VR(), emitQuietFCMP(), llvm::VETargetLowering::emitSjLjDispatchBlock(), llvm::emitThumbRegPlusImmediate(), emitThumbRegPlusImmInReg(), emitVecCondBranchPseudo(), emitVFROUND_NOEXCEPT_MASK(), emitXBegin(), llvm::SIInstrInfo::enforceOperandRCAlignment(), llvm::eraseInstr(), llvm::eraseInstrs(), llvm::execMayBeModifiedBeforeAnyUse(), llvm::execMayBeModifiedBeforeUse(), llvm::AMDGPURegisterBankInfo::executeInWaterfallLoop(), llvm::GIMatchTableExecutor::executeMatchTable(), llvm::SIInstrInfo::expandMovDPP64(), llvm::HexagonInstrInfo::expandPostRAPseudo(), llvm::SPIRVInstrInfo::expandPostRAPseudo(), llvm::HexagonBlockRanges::expandToSubRegs(), llvm::CallLowering::ValueHandler::extendRegister(), llvm::extractParts(), extractRsrcPtr(), llvm::extractVectorParts(), llvm::PPCInstrInfo::finalizeInsInstrs(), llvm::SITargetLowering::finalizeLowering(), llvm::SPIRVTargetLowering::finalizeLowering(), findImplictDefMIFromReg(), findLoopComponents(), llvm::findPHICopyInsertPoint(), llvm::SIRegisterInfo::findReachingDef(), findRedundantFlagInstr(), findScratchNonCalleeSaveRegister(), findSingleRegDef(), findSingleRegUse(), findStartOfTree(), findSurvivorBackwards(), findTemporariesForLR(), llvm::LegalizationArtifactCombiner::ArtifactValueFinder::findUnmergeThatDefinesReg(), llvm::SIRegisterInfo::findUnusedRegister(), findUnusedRegister(), findUseBetween(), llvm::AMDGPULegalizerInfo::fixStoreSourceType(), fixupPHIOpBanks(), foldConstantsIntoIntrinsics(), llvm::PPCInstrInfo::foldFrameOffset(), foldImm(), llvm::SIInstrInfo::foldImmediate(), llvm::ARMBaseInstrInfo::foldImmediate(), llvm::PPCInstrInfo::foldImmediate(), llvm::SystemZInstrInfo::foldImmediate(), llvm::VEInstrInfo::foldImmediate(), llvm::X86InstrInfo::foldImmediate(), llvm::AArch64InstrInfo::foldMemoryOperandImpl(), llvm::SIInstrInfo::foldMemoryOperandImpl(), llvm::SystemZInstrInfo::foldMemoryOperandImpl(), foldVGPRCopyIntoRegSequence(), FollowCopyChain(), forceReg(), llvm::TargetInstrInfo::genAlternativeCodeSequence(), llvm::AArch64InstrInfo::genAlternativeCodeSequence(), llvm::RISCVInstrInfo::genAlternativeCodeSequence(), generateAssignInstrs(), llvm::generateGroupInst(), llvm::generateGroupUniformInst(), llvm::generateIntelSubgroupsInst(), llvm::generateLoadStoreInst(), llvm::generateReadImageInst(), llvm::generateSampleImageInst(), llvm::generateSpecConstantInst(), genFNegatedMAD(), genFusedMultiply(), genFusedMultiplyAcc(), genFusedMultiplyAccNeg(), genFusedMultiplyIdx(), genFusedMultiplyIdxNeg(), genIndexedMultiply(), genMaddR(), genNeg(), genSubAdd2SubSub(), genTPEntry(), genTPLoopBody(), llvm::genWorkgroupQuery(), llvm::AArch64GISelUtils::getAArch64VectorSplat(), llvm::AArch64GISelUtils::getAArch64VectorSplatScalar(), llvm::LegalizerInfo::getAction(), llvm::SIInstrInfo::getAddNoCarry(), llvm::AMDGPURegisterBankInfo::getAGPROpMapping(), llvm::TargetRegisterInfo::getAllocatableSet(), llvm::getAnyConstantVRegValWithLookThrough(), getArgBaseReg(), getBaseWithConstantOffset(), llvm::AMDGPU::getBaseWithConstantOffset(), llvm::getBlockStructInstr(), llvm::getBlockStructType(), llvm::FunctionLoweringInfo::getCatchPadExceptionPointerVReg(), llvm::getConstantFPVRegVal(), llvm::PPCInstrInfo::getConstantFromConstantPool(), getConstantZext32Val(), llvm::getConstFromIntrinsic(), llvm::SIRegisterInfo::getConstrainedRegClassForOperand(), llvm::X86InstrInfo::getConstValDefinedInReg(), getCopyRegClasses(), getDataDeps(), llvm::AMDGPURegisterBankInfo::getDefaultMappingAllVGPR(), llvm::AMDGPURegisterBankInfo::getDefaultMappingSOP(), llvm::AMDGPURegisterBankInfo::getDefaultMappingVOP(), llvm::getDefIgnoringCopies(), llvm::getDefInstrMaybeConstant(), getDefRegMask(), llvm::getDefSrcRegIgnoringCopies(), getDynAllocaAmount(), llvm::getFConstantSplat(), llvm::getFConstantVRegValWithLookThrough(), llvm::PPCInstrInfo::getFMAPatterns(), getFMULPatterns(), getFNEGPatterns(), getFoldableImm(), llvm::getFunctionLiveInPhysReg(), llvm::CSKYInstrInfo::getGlobalBaseReg(), llvm::getIConstantSplatSExtVal(), llvm::getIConstantSplatVal(), llvm::getIConstantVRegSExtVal(), llvm::getIConstantVRegVal(), llvm::getIConstantVRegValWithLookThrough(), llvm::getIConstVal(), llvm::AMDGPURegisterBankInfo::getImageMapping(), getImmedFromMO(), llvm::AMDGPULegalizerInfo::getImplicitArgPtr(), llvm::R600InstrInfo::getIndirectIndexBegin(), getIndirectSGPRIdx(), llvm::AArch64RegisterBankInfo::getInstrAlternativeMappings(), llvm::AMDGPURegisterBankInfo::getInstrAlternativeMappings(), llvm::X86RegisterBankInfo::getInstrAlternativeMappings(), llvm::AMDGPURegisterBankInfo::getInstrAlternativeMappingsIntrinsic(), llvm::AMDGPURegisterBankInfo::getInstrAlternativeMappingsIntrinsicWSideEffects(), llvm::AArch64RegisterBankInfo::getInstrMapping(), llvm::AMDGPURegisterBankInfo::getInstrMapping(), llvm::ARMRegisterBankInfo::getInstrMapping(), llvm::MipsRegisterBankInfo::getInstrMapping(), llvm::PPCRegisterBankInfo::getInstrMapping(), llvm::RISCVRegisterBankInfo::getInstrMapping(), llvm::X86RegisterBankInfo::getInstrMapping(), llvm::AMDGPURegisterBankInfo::getInstrMappingForLoad(), llvm::RegisterBankInfo::getInstrMappingImpl(), llvm::SIInstrInfo::getInstructionUniformity(), llvm::X86InstrInfo::getJumpTableIndex(), getJumpTableIndexFromReg(), getLanesWithProperty(), llvm::RegPressureTracker::getLastUsedLanes(), llvm::getLiveLaneMask(), getLiveLanesAt(), llvm::RegPressureTracker::getLiveLanesAt(), llvm::getLiveRegMap(), llvm::getLiveRegs(), llvm::RegPressureTracker::getLiveThroughAt(), llvm::DstOp::getLLTTy(), llvm::SrcOp::getLLTTy(), llvm::AMDGPURegisterBankInfo::getMappingType(), llvm::mca::Context::getMCRegisterInfo(), getMemsetValue(), llvm::RegisterBankInfo::OperandsMapper::getMRI(), getNewSource(), llvm::getOpcodeDef(), llvm::PPCInstrInfo::getOperandLatency(), getOperandsForBranch(), getOperandSize(), llvm::SIInstrInfo::getOpRegClass(), getPHIDeps(), llvm::GISelAddressing::getPointerInfo(), llvm::MachineFrameInfo::getPristineRegs(), getRC32(), llvm::ARMBaseRegisterInfo::getRegAllocationHints(), llvm::PPCRegisterInfo::getRegAllocationHints(), llvm::RISCVRegisterInfo::getRegAllocationHints(), llvm::SystemZRegisterInfo::getRegAllocationHints(), llvm::X86RegisterInfo::getRegAllocationHints(), llvm::TargetRegisterInfo::getRegAllocationHints(), llvm::RegisterBankInfo::getRegBank(), llvm::RegisterBankInfo::getRegBankFromConstraints(), llvm::AMDGPURegisterBankInfo::getRegBankID(), getRegClassesForCopy(), llvm::SIRegisterInfo::getRegClassForOperandReg(), llvm::SIRegisterInfo::getRegClassForReg(), llvm::LiveRangeCalc::getRegInfo(), llvm::VirtRegMap::getRegInfo(), llvm::MCContext::getRegisterInfo(), llvm::LLVMDisasmContext::getRegisterInfo(), getRegLiveThroughMask(), getRegOpRC(), llvm::getRegPressure(), llvm::TargetRegisterInfo::getRegSizeInBits(), llvm::LiveIntervals::HMEditor::getRegUnitLI(), getSalvageOpsForTrunc(), llvm::AMDGPULegalizerInfo::getSegmentAperture(), llvm::AMDGPURegisterBankInfo::getSGPROpMapping(), getShape(), llvm::RegisterBankInfo::getSizeInBits(), getSrcFromCopy(), llvm::getSrcRegIgnoringCopies(), getTestBitReg(), getTileShape(), getTruncStoreByteOffset(), getTypeFromTypeIdx(), llvm::MachineInstr::getTypeToPrint(), llvm::AMDGPURegisterBankInfo::getValueMappingForPtr(), llvm::SIInstrInfo::getVALUOp(), getVectorShiftImm(), getVectorSHLImm(), llvm::getVectorSplat(), llvm::AMDGPURegisterBankInfo::getVGPROpMapping(), llvm::RISCVInstrInfo::getVLENFactoredAmount(), getVRegDef(), llvm::PerFunctionMIParsingState::getVRegInfo(), llvm::getVRegSubRegDef(), llvm::GISelInstProfileBuilder::GISelInstProfileBuilder(), llvm::CallLowering::handleAssignments(), llvm::AMDGPURegisterBankInfo::handleD16VData(), llvm::AMDGPULegalizerInfo::handleD16VData(), llvm::LiveIntervals::handleMove(), llvm::LiveIntervals::handleMoveIntoNewBundle(), hasAllNBitUsers(), hasAllWUsers(), hasAnyNonFlatUseOfReg(), hasArgumentDef(), llvm::X86InstrInfo::hasCommutePreference(), llvm::MCInstrDesc::hasImplicitDefOfPhysReg(), hasMoreUses(), hasOneNonDBGUse(), llvm::TargetInstrInfo::hasReassociableOperands(), llvm::TargetInstrInfo::hasReassociableSibling(), llvm::RISCVInstrInfo::hasReassociableSibling(), hasSameNumEltsOnAllVectorOperands(), hasSameValue(), hasUseAfterLoop(), llvm::SIInstrInfo::hasVGPRUses(), llvm::LiveIntervals::HMEditor::HMEditor(), hoistAndMergeSGPRInits(), llvm::GCNRegPressure::inc(), increaseSetPressure(), llvm::LiveRegSet::init(), INITIALIZE_PASS(), llvm::MIRParserImpl::initializeMachineFunction(), initializeRecordStreamer(), llvm::AArch64_MC::initLLVMToCVRegMapping(), llvm::ARM_MC::initLLVMToCVRegMapping(), llvm::X86_MC::initLLVMToSEHAndCVRegMapping(), llvm::WebAssemblyFunctionInfo::initWARegs(), llvm::PPCFrameLowering::inlineStackProbe(), llvm::insertAssignInstr(), llvm::VEInstrInfo::insertBranch(), llvm::AArch64TargetLowering::insertCopiesSplitCSR(), llvm::SITargetLowering::insertCopiesSplitCSR(), insertCSRSaves(), llvm::SIInstrInfo::insertEQ(), llvm::SIInstrInfo::insertIndirectBranch(), llvm::LoongArchInstrInfo::insertIndirectBranch(), llvm::RISCVInstrInfo::insertIndirectBranch(), llvm::insertMultibyteShift(), llvm::SIInstrInfo::insertNE(), InsertNewDef(), insertPHI(), llvm::SIInstrInfo::insertSelect(), llvm::AArch64InstrInfo::insertSelect(), llvm::PPCInstrInfo::insertSelect(), llvm::SystemZInstrInfo::insertSelect(), llvm::X86InstrInfo::insertSelect(), llvm::CallLowering::insertSRetIncomingArgument(), llvm::CallLowering::insertSRetLoads(), llvm::CallLowering::insertSRetStores(), insertUndefLaneMask(), llvm::SIInstrInfo::insertVectorSelect(), llvm::GISelAddressing::instMayAlias(), InstReorderLimit(), is64bitDefwithZeroHigh64bit(), llvm::SIRegisterInfo::isAGPR(), isAGPRCopy(), IsAGPROperand(), llvm::isAllOnesOrAllOnesSplat(), isBackwardPropagatableCopy(), llvm::GIMatchTableExecutor::isBaseWithConstantOffset(), llvm::SIInstrInfo::isBasicBlockPrologue(), llvm::isBuildVectorAllOnes(), llvm::isBuildVectorAllZeros(), llvm::isBuildVectorConstantSplat(), isCallerPreservedOrConstPhysReg(), llvm::SITargetLowering::isCanonicalized(), llvm::AArch64GISelUtils::isCMN(), isConstantCostlierToNegate(), llvm::isConstantOrConstantSplatVector(), llvm::isConstantOrConstantVector(), isCopyFeedingInvariantStore(), isCrossCopy(), isCVTAToLocalCombinationCandidate(), llvm::isCycleInvariant(), isDefBetween(), isDefLiveOut(), llvm::SITargetLowering::isEligibleForTailCallOptimization(), llvm::AArch64InstrInfo::isExtendLikelyToBeFolded(), isExtractHiElt(), isFPExtFromF16OrConst(), isFPIntrinsic(), isFPR64(), llvm::AMDGPU::isHi(), isImm(), isImplicitlyDef(), isImplicitlyDefined(), isInvariantStore(), llvm::isKnownNeverNaN(), llvm::isKnownNeverSNaN(), isKnownNonNull(), llvm::isKnownToBeAPowerOfTwo(), llvm::LegalizerInfo::isLegal(), llvm::LegalizerInfo::isLegalOrCustom(), llvm::SIInstrInfo::isLegalRegOperand(), llvm::SIInstrInfo::isLegalVSrcOperand(), llvm::LiveVariables::VarInfo::isLiveIn(), llvm::LiveVariables::isLiveIn(), llvm::SMSchedule::isLoopCarried(), llvm::SMSchedule::isLoopCarriedDefOfUse(), llvm::MachineLoop::isLoopInvariant(), llvm::isModAndRefSet(), llvm::isModOrRefSet(), llvm::isModSet(), llvm::isNoModRef(), isNonZeroModBitWidthOrUndef(), isNot(), llvm::isNullOrNullSplat(), llvm::isOfRegClass(), llvm::GIMatchTableExecutor::isOperandImmEqual(), isOperandKill(), llvm::SIInstrInfo::isOperandLegal(), llvm::HexagonMCInstrInfo::isPredReg(), llvm::TargetInstrInfo::isReallyTriviallyReMaterializable(), llvm::X86InstrInfo::isReallyTriviallyReMaterializable(), llvm::TargetLowering::isReassocProfitable(), llvm::AMDGPUTargetLowering::isReassocProfitable(), llvm::SITargetLowering::isReassocProfitable(), llvm::isRefSet(), isSafeToMove(), llvm::SIInstrInfo::isSafeToSink(), llvm::AMDGPURegisterBankInfo::isSALUMapping(), llvm::SITargetLowering::isSDNodeSourceOfDivergence(), llvm::LegalizationArtifactCombiner::ArtifactValueFinder::isSequenceFromUnmerge(), llvm::SIRegisterInfo::isSGPRReg(), llvm::PPCInstrInfo::isSignExtended(), isSignExtendedW(), llvm::PPCInstrInfo::isSignOrZeroExtended(), isSimpleIf(), isSSA(), isTerminalReg(), isTileDef(), isTileRegDef(), llvm::isTriviallyDead(), llvm::SPIRVInstrInfo::isTypeDeclInstr(), llvm::SIRegisterInfo::isUniformReg(), isVCmpResult(), llvm::SIRegisterInfo::isVectorRegister(), llvm::SIRegisterInfo::isVGPR(), llvm::SIInstrInfo::isVGPRCopy(), isVRegCompatibleReg(), isXPLeafCandidate(), llvm::PPCInstrInfo::isZeroExtended(), llvm::LegalizationArtifactCombiner::LegalizationArtifactCombiner(), llvm::AMDGPULegalizerInfo::legalizeAddrSpaceCast(), llvm::AMDGPULegalizerInfo::legalizeAtomicCmpXChg(), llvm::AMDGPULegalizerInfo::legalizeBufferLoad(), llvm::AMDGPULegalizerInfo::legalizeBufferStore(), llvm::AMDGPULegalizerInfo::legalizeBuildVector(), llvm::AMDGPULegalizerInfo::legalizeBVHIntrinsic(), llvm::AMDGPULegalizerInfo::legalizeCTLZ_CTTZ(), llvm::AArch64LegalizerInfo::legalizeCustom(), llvm::AMDGPULegalizerInfo::legalizeCustom(), llvm::ARMLegalizerInfo::legalizeCustom(), llvm::MipsLegalizerInfo::legalizeCustom(), llvm::SPIRVLegalizerInfo::legalizeCustom(), llvm::AMDGPULegalizerInfo::legalizeExtractVectorElt(), llvm::AMDGPULegalizerInfo::legalizeFastUnsafeFDIV(), llvm::AMDGPULegalizerInfo::legalizeFastUnsafeFDIV64(), llvm::AMDGPULegalizerInfo::legalizeFceil(), llvm::AMDGPULegalizerInfo::legalizeFDIV(), llvm::AMDGPULegalizerInfo::legalizeFDIV16(), llvm::AMDGPULegalizerInfo::legalizeFDIV32(), llvm::AMDGPULegalizerInfo::legalizeFDIV64(), llvm::AMDGPULegalizerInfo::legalizeFExp(), llvm::AMDGPULegalizerInfo::legalizeFFloor(), llvm::AMDGPULegalizerInfo::legalizeFFREXP(), llvm::AMDGPULegalizerInfo::legalizeFlogCommon(), llvm::AMDGPULegalizerInfo::legalizeFMad(), llvm::AMDGPULegalizerInfo::legalizeFPTOI(), llvm::AMDGPULegalizerInfo::legalizeFrem(), llvm::AMDGPULegalizerInfo::legalizeFroundeven(), llvm::AMDGPULegalizerInfo::legalizeFSQRT(), llvm::AMDGPULegalizerInfo::legalizeFSQRTF32(), llvm::AMDGPULegalizerInfo::legalizeFSQRTF64(), llvm::SIInstrInfo::legalizeGenericOperand(), llvm::AMDGPULegalizerInfo::legalizeGetFPEnv(), llvm::AMDGPULegalizerInfo::legalizeGlobalValue(), llvm::AMDGPULegalizerInfo::legalizeImageIntrinsic(), llvm::AMDGPULegalizerInfo::legalizeImplicitArgPtr(), llvm::AMDGPULegalizerInfo::legalizeInsertVectorElt(), llvm::AArch64LegalizerInfo::legalizeIntrinsic(), llvm::AMDGPULegalizerInfo::legalizeIntrinsic(), llvm::RISCVLegalizerInfo::legalizeIntrinsic(), llvm::AMDGPULegalizerInfo::legalizeIntrinsicTrunc(), llvm::AMDGPULegalizerInfo::legalizeIsAddrSpace(), llvm::AMDGPULegalizerInfo::legalizeITOFP(), llvm::AMDGPULegalizerInfo::legalizeLDSKernelId(), llvm::AMDGPULegalizerInfo::legalizeLoad(), llvm::Legalizer::legalizeMachineFunction(), llvm::AMDGPULegalizerInfo::legalizeMul(), llvm::SIInstrInfo::legalizeOperands(), llvm::SIInstrInfo::legalizeOperandsFLAT(), llvm::SIInstrInfo::legalizeOperandsSMRD(), llvm::SIInstrInfo::legalizeOperandsVOP2(), llvm::SIInstrInfo::legalizeOperandsVOP3(), llvm::SIInstrInfo::legalizeOpWithMove(), llvm::AMDGPULegalizerInfo::legalizePointerAsRsrcIntrin(), llvm::AMDGPULegalizerInfo::legalizeRsqClampIntrinsic(), llvm::AMDGPULegalizerInfo::legalizeSetFPEnv(), llvm::AMDGPULegalizerInfo::legalizeSignedDIV_REM(), llvm::AMDGPULegalizerInfo::legalizeSinCos(), llvm::AMDGPULegalizerInfo::legalizeStore(), llvm::SITargetLowering::legalizeTargetIndependentNode(), llvm::AMDGPULegalizerInfo::legalizeTrapHsaQueuePtr(), llvm::AMDGPULegalizerInfo::legalizeTrapIntrinsic(), llvm::AMDGPULegalizerInfo::legalizeUnsignedDIV_REM(), llvm::AMDGPULegalizerInfo::legalizeWorkitemIDIntrinsic(), llvm::LiveRangeEdit::LiveRangeEdit(), LLVMCreateDisasmCPUFeatures(), llvm::LLVMDisasmContext::LLVMDisasmContext(), LLVMSetDisasmOptions(), llvm::SystemZInstrInfo::loadImmediate(), loadM0FromVGPR(), loadMBUFScalarOperandsFromVGPR(), llvm::Thumb2InstrInfo::loadRegFromStackSlot(), llvm::SIInstrInfo::loadRegFromStackSlot(), LookThroughCOPY(), llvm::TargetRegisterInfo::lookThruCopyLike(), llvm::TargetRegisterInfo::lookThruSingleUseCopyChain(), llvm::WebAssemblyMCInstLower::lower(), llvm::AArch64CallLowering::lowerCall(), llvm::AMDGPUCallLowering::lowerCall(), llvm::ARMCallLowering::lowerCall(), llvm::M68kCallLowering::lowerCall(), llvm::SPIRVCallLowering::lowerCall(), llvm::X86CallLowering::lowerCall(), llvm::CallLowering::lowerCall(), llvm::HexagonTargetLowering::LowerCallResult(), LowerCallResults(), llvm::AMDGPUCallLowering::lowerFormalArguments(), llvm::AArch64CallLowering::lowerFormalArguments(), llvm::M68kCallLowering::lowerFormalArguments(), llvm::PPCCallLowering::lowerFormalArguments(), llvm::SPIRVCallLowering::lowerFormalArguments(), llvm::X86CallLowering::lowerFormalArguments(), llvm::SITargetLowering::LowerFormalArguments(), llvm::HexagonTargetLowering::LowerFormalArguments(), llvm::SystemZTargetLowering::LowerFormalArguments(), llvm::AMDGPUCallLowering::lowerFormalArgumentsKernel(), LowerFPToInt(), llvm::InlineAsmLowering::lowerInlineAsm(), llvm::X86CallLowering::lowerReturn(), llvm::AArch64CallLowering::lowerReturn(), llvm::M68kCallLowering::lowerReturn(), llvm::PPCCallLowering::lowerReturn(), llvm::AMDGPUCallLowering::lowerTailCall(), llvm::LegalizerHelper::lowerTRUNC(), llvm::RISCVRegisterInfo::lowerVRELOAD(), llvm::RISCVRegisterInfo::lowerVSPILL(), lowerWaveReduce(), llvm::machineFunctionIsIllegal(), llvm::GenericUniformityAnalysisImpl< ContextT >::markDefsDivergent(), llvm::MIPatternMatch::bind_ty< Class >::match(), llvm::MIPatternMatch::And< Pred, Preds... >::match(), llvm::MIPatternMatch::Or< Pred, Preds... >::match(), llvm::MIPatternMatch::BinaryOp_match< LHS_P, RHS_P, Opcode, Commutable >::match(), llvm::MIPatternMatch::BinaryOpc_match< LHS_P, RHS_P, Commutable >::match(), llvm::MIPatternMatch::UnaryOp_match< SrcTy, Opcode >::match(), llvm::MIPatternMatch::CompareOp_match< Pred_P, LHS_P, RHS_P, Opcode, Commutable >::match(), llvm::MIPatternMatch::TernaryOp_match< Src0Ty, Src1Ty, Src2Ty, Opcode >::match(), llvm::MIPatternMatch::OneUse_match< SubPatternT >::match(), llvm::MIPatternMatch::OneNonDBGUse_match< SubPatternT >::match(), llvm::MIPatternMatch::ConstantMatch< ConstT >::match(), llvm::MIPatternMatch::ICstOrSplatMatch< ConstT >::match(), llvm::MIPatternMatch::GCstAndRegMatch::match(), llvm::MIPatternMatch::GFCstAndRegMatch::match(), llvm::MIPatternMatch::GFCstOrSplatGFCstMatch::match(), llvm::MIPatternMatch::SpecificConstantMatch::match(), llvm::MIPatternMatch::SpecificConstantSplatMatch::match(), llvm::MIPatternMatch::SpecificConstantOrSplatMatch::match(), llvm::MIPatternMatch::ImplicitDefMatch::match(), llvm::MIPatternMatch::CheckType::match(), matchAliasCondition(), llvm::MIPatternMatch::matchConstant(), llvm::MIPatternMatch::matchConstantSplat(), MatchingStackOffset(), matchLDPSTPAddrMode(), matchLoadAndBytePosition(), llvm::matchUnaryPredicate(), matchZeroExtendFromS32(), llvm::AArch64RegisterInfo::materializeFrameBaseRegister(), llvm::SIRegisterInfo::materializeFrameBaseRegister(), llvm::ARMBaseRegisterInfo::materializeFrameBaseRegister(), llvm::PPCRegisterInfo::materializeFrameBaseRegister(), llvm::SIInstrInfo::materializeImmediate(), maybeRewriteToDrop(), maybeRewriteToFallthrough(), llvm::SIInstrInfo::mayReadEXEC(), mergeVectorRegsToResultRegs(), llvm::MIPatternMatch::mi_match(), llvm::ModuloScheduleExpander::ModuloScheduleExpander(), moveAndTeeForMultiUse(), llvm::SIInstrInfo::moveFlatAddrToVGPR(), moveForSingleUse(), moveOperands(), llvm::SIInstrInfo::moveToVALUImpl(), llvm::CSKYInstrInfo::movImm(), llvm::RISCVRegisterInfo::needsFrameBaseReg(), needToReserveScavengingSpillSlots(), oneUseDominatesOtherUses(), opMustUseVOP3Encoding(), optimizeCall(), llvm::PPCInstrInfo::optimizeCmpPostRA(), llvm::AArch64InstrInfo::optimizeCompareInstr(), llvm::SIInstrInfo::optimizeCompareInstr(), llvm::ARMBaseInstrInfo::optimizeCompareInstr(), llvm::LanaiInstrInfo::optimizeCompareInstr(), llvm::X86InstrInfo::optimizeCompareInstr(), llvm::PPCInstrInfo::optimizeCompareInstr(), llvm::AArch64InstrInfo::optimizeCondBranch(), llvm::RISCVInstrInfo::optimizeCondBranch(), llvm::BranchFolder::OptimizeFunction(), llvm::X86InstrInfo::optimizeLoadInstr(), llvm::LanaiInstrInfo::optimizeSelect(), llvm::ARMBaseInstrInfo::optimizeSelect(), llvm::RISCVInstrInfo::optimizeSelect(), llvm::CallLowering::parametersInCSRMatch(), llvm::TargetLowering::parametersInCSRMatch(), llvm::AMDGPUCallLowering::passSpecialInputs(), peekThroughBitcast(), llvm::PeelSingleBlockLoop(), llvm::SITargetLowering::PostISelFolding(), llvm::HexagonInstrInfo::PredicateInstruction(), llvm::VETargetLowering::prepareMBB(), llvm::VETargetLowering::prepareSymbol(), llvm::print(), llvm::MIPrinter::print(), llvm::MachineInstr::print(), llvm::MachineBasicBlock::print(), llvm::MachineOperand::print(), llvm::SystemZAsmPrinter::PrintAsmOperand(), printFPOReg(), printLivenessInfo(), PrintNodeInfo(), llvm::printReg(), llvm::SystemZELFFrameLowering::processFunctionBeforeFrameFinalized(), llvm::SIFrameLowering::processFunctionBeforeFrameFinalized(), llvm::SIFrameLowering::processFunctionBeforeFrameIndicesReplaced(), llvm::processInstr(), processInstrsWithTypeFolding(), processNewInstrs(), processSwitches(), llvm::ARMBaseInstrInfo::produceSameValue(), propagateLocalCopies(), propagateSPIRVType(), llvm::SwiftErrorValueTracking::propagateVRegs(), llvm::PSetIterator::PSetIterator(), pushRegsToStack(), llvm::SIInstrInfo::readlaneVGPRToSGPR(), llvm::TargetInstrInfo::reassociateOps(), llvm::RegPressureTracker::recede(), llvm::recomputeLivenessFlags(), regIsPICBase(), reinsertVectorIndexAdd(), llvm::SIInstrInfo::reMaterialize(), rematerializeCheapDef(), removeCopies(), llvm::MachineInstr::removeOperand(), llvm::LiveIntervals::repairIntervalsInRange(), replaceDominatedUses(), llvm::LegalizationArtifactCombiner::replaceRegOrBuildCopy(), replaceRegUsesAfterLoop(), rescheduleCanonically(), reservePrivateMemoryRegs(), llvm::PPCRegisterInfo::resolveFrameIndex(), llvm::M68kFrameLowering::restoreCalleeSavedRegisters(), llvm::restoreStatusRegister(), resultDependsOnExec(), llvm::rewriteT2FrameIndex(), llvm::RegisterClassInfo::runOnMachineFunction(), llvm::ExecutionDomainFix::runOnMachineFunction(), llvm::InstructionSelect::runOnMachineFunction(), llvm::SelectionDAGISel::runOnMachineFunction(), llvm::VirtRegMap::runOnMachineFunction(), llvm::GCNRegPressurePrinter::runOnMachineFunction(), llvm::WebAssemblyAsmPrinter::runOnMachineFunction(), llvm::MachineFunction::salvageCopySSAImpl(), llvm::salvageDebugInfo(), llvm::salvageDebugInfoForDbgValue(), salvageDebugInfoImpl(), llvm::saveUsesAndErase(), llvm::scavengeFrameVirtualRegs(), scavengeFrameVirtualRegsInBlock(), scavengeVReg(), llvm::AMDGPUInstructionSelector::select(), selectCopy(), selectDebugInstr(), selectMergeValues(), selectUnmergeValues(), selectWMMAModsNegAbs(), llvm::AMDGPURegisterBankInfo::setBufferOffsets(), llvm::MachineOperand::setIsDef(), llvm::MachineOperand::setReg(), llvm::MipsRegisterBankInfo::setRegBank(), llvm::CoalescerPair::setRegisters(), setRegsToType(), llvm::MIRParserImpl::setupRegisterInfo(), llvm::ShapeT::ShapeT(), llvm::SIMachineFunctionInfo::shiftSpillPhysVGPRsToLowestRange(), llvm::AArch64RegisterInfo::shouldCoalesce(), llvm::ARMBaseRegisterInfo::shouldCoalesce(), llvm::TargetLoweringBase::shouldLocalize(), llvm::PPCInstrInfo::shouldReduceRegisterPressure(), llvm::TargetRegisterInfo::shouldRegionSplitForVirtReg(), llvm::SMSchedule::SMSchedule(), llvm::AArch64FrameLowering::spillCalleeSavedRegisters(), llvm::M68kFrameLowering::spillCalleeSavedRegisters(), llvm::PPCFrameLowering::spillCalleeSavedRegisters(), llvm::X86FrameLowering::spillCalleeSavedRegisters(), spillVGPRtoAGPR(), llvm::AMDGPURegisterBankInfo::split64BitValueForMapping(), llvm::AMDGPULegalizerInfo::splitBufferOffsets(), llvm::MachineBasicBlock::SplitCriticalEdge(), splitMBB(), llvm::LiveIntervals::splitSeparateComponents(), llvm::stableHashValue(), llvm::WebAssemblyFunctionInfo::stackifyVReg(), STATISTIC(), llvm::Thumb2InstrInfo::storeRegToStackSlot(), llvm::SIInstrInfo::storeRegToStackSlot(), stripAnySourceMods(), stripBitCast(), tryChangeVGPRtoSGPRinCopy(), llvm::LegalizationArtifactCombiner::tryCombineAnyExt(), llvm::LegalizationArtifactCombiner::tryCombineExtract(), llvm::LegalizationArtifactCombiner::tryCombineInstruction(), llvm::LegalizationArtifactCombiner::ArtifactValueFinder::tryCombineMergeLike(), llvm::LegalizationArtifactCombiner::tryCombineSExt(), llvm::LegalizationArtifactCombiner::tryCombineTrunc(), llvm::LegalizationArtifactCombiner::ArtifactValueFinder::tryCombineUnmergeDefs(), llvm::LegalizationArtifactCombiner::tryCombineUnmergeValues(), llvm::LegalizationArtifactCombiner::tryCombineZExt(), llvm::AArch64GISelUtils::tryEmitBZero(), llvm::LegalizationArtifactCombiner::tryFoldImplicitDef(), llvm::LegalizationArtifactCombiner::tryFoldUnmergeCast(), tryToGetTargetInfo(), unstackifyVRegsUsedInSplitBB(), unsupportedBinOp(), llvm::LiveIntervals::HMEditor::updateAllRanges(), updateLiveness(), UpdateOperandRegClass(), updateOperandRegConstraints(), updatePHIs(), llvm::ARMBaseRegisterInfo::updateRegAllocHint(), llvm::SIMachineFunctionInfo::usesAGPRs(), llvm::SIInstrInfo::usesConstantBus(), validatePtrTypes(), valueIsKnownNeverF32Denorm(), llvm::RegisterBankInfo::InstructionMapping::verify(), llvm::LiveInterval::verify(), verifyCFIntrinsic(), llvm::SIInstrInfo::verifyInstruction(), llvm::RISCVInstrInfo::verifyInstruction(), verifyLeafProcRegUse(), llvm::VRegRenamer::VRegRenamer(), llvm::VirtRegAuxInfo::weightCalcHelper(), X86SelectAddress(), and llvm::LiveRangeEdit::~LiveRangeEdit().

◆ SubReg

unsigned SubReg

Definition at line 104 of file AArch64AdvSIMDScalarPass.cpp.

Referenced by llvm::MachineInstrBuilder::addDef(), llvm::SITargetLowering::AddIMGInit(), llvm::LiveIntervals::addKillFlags(), llvm::LivePhysRegs::addReg(), llvm::MachineInstrBuilder::addReg(), llvm::MachineInstrBuilder::addUse(), llvm::LiveRangeEdit::allUsesAvailableAt(), llvm::AnalyzeVirtRegLanesInBundle(), llvm::SIInstrInfo::buildExtractSubReg(), llvm::SIInstrInfo::buildExtractSubRegOrImm(), llvm::SIRegisterInfo::buildSpillLoadStore(), llvm::LiveIntervalCalc::calculate(), llvm::LiveInterval::computeSubRangeUndefs(), llvm::AArch64InstrInfo::copyGPRRegTuple(), llvm::SIInstrInfo::copyPhysReg(), llvm::AArch64InstrInfo::copyPhysRegTuple(), copySubReg(), llvm::MachineOperand::CreateReg(), emitIndirectDst(), emitIndirectSrc(), llvm::GIMatchTableExecutor::executeMatchTable(), llvm::SIInstrInfo::expandPostRAPseudo(), llvm::finalizeBundle(), findHoistingInsertPosAndDeps(), llvm::SIRegisterInfo::findReachingDef(), llvm::TargetInstrInfo::foldMemoryOperand(), llvm::X86InstrInfo::foldMemoryOperandImpl(), foldVGPRCopyIntoRegSequence(), llvm::SIRegisterInfo::getChannelFromSubReg(), getInstReadLaneMask(), llvm::ScheduleDAGInstrs::getLaneMaskForMO(), getMax32BitSubRegister(), llvm::SIRegisterInfo::getNumChannelsFromSubReg(), llvm::SIInstrInfo::getOpSize(), llvm::getRegSequenceSubReg(), llvm::X86RegisterInfo::getReservedRegs(), getSrcFromCopy(), llvm::AArch64RegisterInfo::getStrictlyReservedRegs(), llvm::SuperRegClassIterator::getSubReg(), llvm::SIRegisterInfo::getSubRegAlignmentNumBits(), getSubRegForClass(), llvm::MCRegisterInfo::getSubRegIndex(), insertPHI(), isCrossCopy(), isFPR64(), isSubRegOf(), llvm::SuperRegClassIterator::operator++(), llvm::MachineOperand::print(), llvm::ARMAsmPrinter::PrintAsmOperand(), llvm::LiveIntervals::repairIntervalsInRange(), llvm::SIRegisterInfo::restoreSGPR(), llvm::MachineFunction::salvageCopySSAImpl(), selectCopy(), llvm::HexagonDAGToDAGISel::SelectExtractSubvector(), llvm::HvxSelector::selectExtractSubvector(), llvm::MipsRegInfoRecord::SetPhysRegUsed(), llvm::AArch64RegisterInfo::shouldCoalesce(), llvm::AVRRegisterInfo::shouldCoalesce(), llvm::LiveIntervals::shrinkToUses(), llvm::SIRegisterInfo::spillEmergencySGPR(), llvm::SIRegisterInfo::spillSGPR(), swapRegAndNonRegOperand(), llvm::LiveIntervals::HMEditor::updateAllRanges(), and llvm::AArch64RegisterInfo::UpdateCustomCallPreservedMask().

◆ TransformAll

cl::opt< bool > TransformAll("aarch64-simd-scalar-force-all", cl::desc("Force use of AdvSIMD scalar instructions everywhere"), cl::init(false), cl::Hidden) ( "aarch64-simd-scalar-force-all"  ,
cl::desc("Force use of AdvSIMD scalar instructions everywhere")  ,
cl::init(false)  ,
cl::Hidden   
)
static