LLVM  14.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"
Include dependency graph for AArch64AdvSIMDScalarPass.cpp:

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< bool > TransformAll ("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 llvm::LoopBase< BasicBlock, Loop >::addBasicBlockToLoop(), llvm::X86Operand::addGR16orGR32orGR64Operands(), llvm::X86Operand::addGR32orGR64Operands(), llvm::SystemZFrameLowering::assignCalleeSavedSpillSlots(), llvm::X86FrameLowering::assignCalleeSavedSpillSlots(), llvm::PPCFrameLowering::assignCalleeSavedSpillSlots(), llvm::ARMBaseInstrInfo::breakPartialRegDependency(), llvm::X86InstrInfo::breakPartialRegDependency(), canBeFeederToNewValueJump(), CheckBaseRegAndIndexRegAndScale(), computeCalleeSaveRegisterPairs(), llvm::RegionBase< RegionTraits< Function > >::contains(), llvm::BPFInstrInfo::copyPhysReg(), llvm::MSP430InstrInfo::copyPhysReg(), llvm::RISCVInstrInfo::copyPhysReg(), llvm::Thumb1InstrInfo::copyPhysReg(), llvm::Thumb2InstrInfo::copyPhysReg(), llvm::MipsSEInstrInfo::copyPhysReg(), llvm::LanaiInstrInfo::copyPhysReg(), llvm::Mips16InstrInfo::copyPhysReg(), llvm::ARCInstrInfo::copyPhysReg(), llvm::AVRInstrInfo::copyPhysReg(), llvm::R600InstrInfo::copyPhysReg(), llvm::VEInstrInfo::copyPhysReg(), llvm::SparcInstrInfo::copyPhysReg(), llvm::AArch64InstrInfo::copyPhysReg(), llvm::HexagonInstrInfo::copyPhysReg(), llvm::SIInstrInfo::copyPhysReg(), llvm::ARMBaseInstrInfo::copyPhysReg(), llvm::SystemZInstrInfo::copyPhysReg(), llvm::M68kInstrInfo::copyPhysReg(), llvm::X86InstrInfo::copyPhysReg(), llvm::PPCInstrInfo::copyPhysReg(), CopyToFromAsymmetricReg(), llvm::X86InstrInfo::describeLoadedValue(), llvm::SystemZFrameLowering::determineCalleeSaves(), llvm::RISCVFrameLowering::determineCalleeSaves(), llvm::ARMFrameLowering::determineCalleeSaves(), llvm::AArch64FrameLowering::determineCalleeSaves(), llvm::XCoreRegisterInfo::eliminateFrameIndex(), llvm::ARCRegisterInfo::eliminateFrameIndex(), llvm::X86RegisterInfo::eliminateFrameIndex(), emitLoad(), llvm::MipsSEFrameLowering::emitPrologue(), llvm::SystemZFrameLowering::emitPrologue(), llvm::PPCFrameLowering::emitPrologue(), emitStore(), llvm::ARMBaseInstrInfo::expandPostRAPseudo(), llvm::PPCInstrInfo::expandPostRAPseudo(), llvm::R600InstrInfo::fitsConstReadLimitations(), llvm::AArch64InstrInfo::foldMemoryOperandImpl(), llvm::SystemZInstrInfo::foldMemoryOperandImpl(), llvm::ARMAsmBackendDarwin::generateCompactUnwindEncoding(), llvm::RegionBase< RegionTraits< Function > >::getBBNode(), llvm::HexagonInstrInfo::getCompoundCandidateGroup(), llvm::HexagonInstrInfo::getDuplexCandidateGroup(), llvm::RegionBase< RegionTraits< Function > >::getEnteringBlock(), llvm::LoopBase< BasicBlock, Loop >::getExitBlocks(), llvm::LoopBase< BasicBlock, Loop >::getExitEdges(), llvm::RegionBase< RegionTraits< Function > >::getExitingBlock(), llvm::LoopBase< BasicBlock, Loop >::getExitingBlocks(), llvm::RegionBase< RegionTraits< Function > >::getExitingBlocks(), llvm::RegionBase< RegionTraits< Function > >::getExpandedRegion(), getHexagonRegisterPair(), llvm::LoopBase< BasicBlock, Loop >::getLoopLatch(), llvm::LoopBase< BasicBlock, Loop >::getLoopPredecessor(), getMFHiLoOpc(), getNextRegister(), llvm::RegionBase< RegionTraits< Function > >::getNode(), getPairedGPR(), llvm::ARMBaseInstrInfo::getPartialRegUpdateClearance(), getRC32(), getRegClassFromGRPhysReg(), llvm::SystemZFrameLowering::getRegSpillOffset(), llvm::SIRegisterInfo::getReservedRegs(), llvm::RegionBase< RegionTraits< Function > >::getSubRegionNode(), getSVECalleeSaveSlotRange(), llvm::LoopBase< BasicBlock, Loop >::hasDedicatedExits(), indirectCopyToAGPR(), is16BitMemOperand(), isCSRestore(), isEvenReg(), isFPR64(), llvm::AArch64InstrInfo::isGPRCopy(), llvm::SystemZ::isHighReg(), llvm::SITargetLowering::LowerReturn(), lowerRISCVVMachineInstrToMCInst(), mapArgRegToOffsetAIX(), narrowSDivOrSRem(), nextReg(), llvm::RegionBase< RegionTraits< Function > >::outermostLoopInRegion(), printAsmMRegister(), llvm::HexagonAsmPrinter::PrintAsmOperand(), llvm::ARMAsmPrinter::PrintAsmOperand(), printAsmVRegister(), llvm::ARMAsmPrinter::printOperand(), llvm::MipsAsmPrinter::printSavedRegsBitmask(), llvm::PPCFrameLowering::processFunctionBeforeFrameFinalized(), llvm::R600InstrInfo::readsLDSSrcReg(), llvm::AArch64RegisterInfo::regNeedsCFI(), llvm::Thumb1FrameLowering::restoreCalleeSavedRegisters(), llvm::SystemZFrameLowering::restoreCalleeSavedRegisters(), llvm::X86FrameLowering::restoreCalleeSavedRegisters(), llvm::X86MachineFunctionInfo::setRestoreBasePointer(), llvm::Thumb1FrameLowering::spillCalleeSavedRegisters(), llvm::SystemZFrameLowering::spillCalleeSavedRegisters(), llvm::X86FrameLowering::spillCalleeSavedRegisters(), llvm::AVRRegisterInfo::splitReg(), llvm::LoopBase< BasicBlock, Loop >::verifyLoop(), and llvm::Function::viewCFG().

◆ 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

◆ 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

unsigned const MachineRegisterInfo* MRI
Initial value:
{
if (SubReg)
return false

Definition at line 105 of file AArch64AdvSIMDScalarPass.cpp.

Referenced by llvm::AliasSetTracker::add(), addCalleeSavedRegs(), llvm::DstOp::addDefToMIB(), addHints(), llvm::SITargetLowering::AddIMGInit(), llvm::RegsForValue::AddInlineAsmOperands(), 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::RegisterOperands::adjustLaneLiveness(), llvm::RegPressureTracker::advance(), allocateHSAUserSGPRs(), llvm::SITargetLowering::allocateHSAUserSGPRs(), llvm::SIMachineFunctionInfo::allocateSGPRSpillToVGPR(), llvm::SITargetLowering::allocateSpecialEntryInputVGPRs(), llvm::SIMachineFunctionInfo::allocateVGPRSpillToAGPR(), allPhiOperandsUndefined(), llvm::PPCInstrInfo::analyzeLoopForPipelining(), applyAdjustICmpImmAndPred(), AMDGPUPostLegalizerCombinerHelper::applyCvtF32UByteN(), llvm::RegisterBankInfo::applyDefaultMapping(), applyDupLane(), applyFoldGlobalOffset(), applyICmpRedundantTrunc(), applyINS(), llvm::AMDGPURegisterBankInfo::applyMappingBFE(), llvm::AMDGPURegisterBankInfo::applyMappingDynStackAlloc(), llvm::AMDGPURegisterBankInfo::applyMappingImage(), llvm::MipsRegisterBankInfo::applyMappingImpl(), llvm::AMDGPURegisterBankInfo::applyMappingImpl(), llvm::AMDGPURegisterBankInfo::applyMappingLoad(), llvm::AMDGPURegisterBankInfo::applyMappingSBufferLoad(), AMDGPUPostLegalizerCombinerHelper::applyUCharToFloat(), llvm::AMDGPUCallLowering::areCalleeOutgoingArgsTailCallable(), llvm::ARMAsmBackendDarwin::ARMAsmBackendDarwin(), llvm::CallLowering::IncomingValueHandler::assignValueToReg(), attemptDebugCopyProp(), llvm::LivePhysRegs::available(), llvm::MIPatternMatch::bind_helper< MachineInstr * >::bind(), llvm::MIPatternMatch::bind_helper< LLT >::bind(), llvm::MIPatternMatch::bind_helper< const ConstantFP * >::bind(), llvm::rdf::DataFlowGraph::build(), buildAddr64RSrc(), buildAnyextOrCopy(), buildCopyFromRegs(), buildCopyToRegs(), buildDefCFAReg(), llvm::CallLowering::IncomingValueHandler::buildExtensionHint(), llvm::SIInstrInfo::buildExtractSubReg(), llvm::SIInstrInfo::buildExtractSubRegOrImm(), buildOffsetSrc(), llvm::AArch64InstrInfo::buildOutlinedFrame(), buildRSRC(), buildScratchExecCopy(), llvm::AMDGPURegisterBankInfo::buildVCopy(), llvm::RegPressureTracker::bumpDownwardPressure(), llvm::RegPressureTracker::bumpUpwardPressure(), llvm::LiveIntervalCalc::calculate(), llvm::VirtRegAuxInfo::calculateSpillWeightsAndHints(), canCombine(), canCompareBeNewValueJump(), canFoldCopy(), canFoldIntoCSel(), canFoldIntoSelect(), llvm::AArch64InstrInfo::canInsertSelect(), llvm::SystemZInstrInfo::canInsertSelect(), llvm::SIInstrInfo::canInsertSelect(), llvm::X86InstrInfo::canInsertSelect(), llvm::PPCInstrInfo::canInsertSelect(), llvm::M68kRegisterInfo::canRealignStack(), llvm::X86RegisterInfo::canRealignStack(), llvm::ARMBaseRegisterInfo::canRealignStack(), llvm::canReplaceReg(), llvm::SIInstrInfo::canShrink(), llvm::canSinkOrHoistInst(), llvm::MachineInstr::changeDebugValuesDefReg(), llvm::GISelChangeObserver::changingAllUsesOfReg(), checkFnHasLiveInYmmOrZmm(), checkFunctionMemoryAccess(), llvm::clearMod(), llvm::clearMust(), llvm::clearRef(), llvm::X86_MC::X86MCInstrAnalysis::clearsSuperRegisters(), llvm::RegisterOperands::collect(), collectVirtualRegUses(), llvm::AMDGPURegisterBankInfo::collectWaterfallOperands(), CombineCVTAToLocal(), llvm::PPCInstrInfo::combineRLWINM(), llvm::HexagonBlockRanges::computeDeadMap(), computeIndirectRegIndex(), llvm::SITargetLowering::computeKnownAlignForTargetInstr(), llvm::SITargetLowering::computeKnownBitsForTargetInstr(), llvm::computeLiveIns(), computeLiveOuts(), llvm::AMDGPUTargetLowering::computeNumSignBitsForTargetInstr(), llvm::LiveInterval::computeSubRangeUndefs(), computeWeight(), llvm::ConstantFoldBinOp(), llvm::ConstantFoldExtOp(), llvm::ConstantFoldFPBinOp(), constantFoldFpUnary(), llvm::ConstantFoldIntToFloat(), 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(), llvm::PPCInstrInfo::convertToImmediateForm(), llvm::CallLowering::ValueHandler::copyArgumentMemory(), copyHint(), llvm::WebAssemblyInstrInfo::copyPhysReg(), llvm::NVPTXInstrInfo::copyPhysReg(), copySubReg(), llvm::createAArch64leAsmBackend(), createAArch64MCAsmInfo(), createAArch64MCInstPrinter(), createAMDGPUMCInstPrinter(), createARCMCInstPrinter(), createARMAsmBackend(), llvm::createARMBEAsmBackend(), llvm::createARMLEAsmBackend(), createARMMCAsmInfo(), createARMMCInstPrinter(), createAVRMCInstPrinter(), createBBSelectReg(), llvm::createBPFbeMCCodeEmitter(), llvm::createBPFMCCodeEmitter(), createBPFMCInstPrinter(), createCSKYMCAsmInfo(), createCSKYMCInstPrinter(), llvm::LiveIntervalCalc::createDeadDefs(), createHexagonMCAsmInfo(), createHexagonMCInstPrinter(), createLanaiMCInstPrinter(), createLaneMaskReg(), llvm::AMDGPUTargetLowering::CreateLiveInRegister(), createM68kMCAsmInfo(), createM68kMCInstPrinter(), llvm::Target::createMCAsmBackend(), llvm::Target::createMCAsmInfo(), llvm::Target::createMCCodeEmitter(), createMCInstPrinter(), llvm::Target::createMCInstPrinter(), llvm::createMemLibcall(), llvm::createMipsAsmBackend(), createMipsMCAsmInfo(), createMipsMCInstPrinter(), createMSP430MCInstPrinter(), createNVPTXMCInstPrinter(), createPostIncLoadStore(), createPPCMCAsmInfo(), createPPCMCInstPrinter(), llvm::createR600MCCodeEmitter(), createRISCVMCAsmInfo(), createRISCVMCInstPrinter(), llvm::createSIMCCodeEmitter(), createSparcMCAsmInfo(), createSparcMCInstPrinter(), createSparcV9MCAsmInfo(), createSystemZMCAsmInfo(), createSystemZMCInstPrinter(), createVEMCAsmInfo(), createVEMCInstPrinter(), llvm::HexagonInstrInfo::createVR(), llvm::RegisterBankInfo::OperandsMapper::createVRegs(), llvm::createX86_32AsmBackend(), llvm::createX86_64AsmBackend(), createX86MCAsmInfo(), createX86MCInstPrinter(), createXCoreMCInstPrinter(), decodeOperand_AVLdSt_Any(), decreaseSetPressure(), llvm::ShapeT::deduceImm(), llvm::XCoreFrameLowering::determineCalleeSaves(), llvm::ARMFrameLowering::determineCalleeSaves(), llvm::AArch64FrameLowering::determineCalleeSaves(), llvm::HexagonFrameLowering::determineCalleeSaves(), llvm::TargetFrameLowering::determineCalleeSaves(), llvm::RegPressureTracker::discoverLiveInOrOut(), llvm::ConnectedVNInfoEqClasses::Distribute(), dominatesAllUsesOf(), llvm::DWARFDebugLoc::dump(), llvm::dwarf::UnwindLocation::dump(), llvm::dwarf::RegisterLocations::dump(), llvm::dwarf::UnwindRow::dump(), llvm::dwarf::UnwindTable::dump(), llvm::dwarf::CFIProgram::dump(), llvm::dwarf::CIE::dump(), llvm::dwarf::FDE::dump(), dumpExpression(), dumpLocationExpr(), dumpLocationList(), dumpLoclistsSection(), llvm::MachineInstr::dumpr(), llvm::DWARFDebugLoclists::dumpRange(), llvm::WebAssemblyRegisterInfo::eliminateFrameIndex(), llvm::HexagonRegisterInfo::eliminateFrameIndex(), llvm::RISCVRegisterInfo::eliminateFrameIndex(), llvm::X86FrameLowering::emitCalleeSavedFrameMoves(), emitCallSPUpdate(), llvm::VETargetLowering::emitEHSjLjLongJmp(), llvm::PPCTargetLowering::emitEHSjLjLongJmp(), llvm::VETargetLowering::emitEHSjLjSetJmp(), llvm::PPCTargetLowering::emitEHSjLjSetJmp(), llvm::SIFrameLowering::emitEntryFunctionPrologue(), llvm::SIFrameLowering::emitEpilogue(), llvm::WebAssemblyFrameLowering::emitEpilogue(), llvm::X86FrameLowering::emitEpilogue(), llvm::SITargetLowering::emitGWSMemViolTestLoop(), emitIndirectDst(), emitIndirectSrc(), llvm::R600TargetLowering::EmitInstrWithCustomInserter(), llvm::SITargetLowering::EmitInstrWithCustomInserter(), llvm::ARMTargetLowering::EmitInstrWithCustomInserter(), llvm::X86TargetLowering::EmitInstrWithCustomInserter(), emitLoadM0FromVGPRLoop(), emitLoadSRsrcFromVGPRLoop(), llvm::PPCTargetLowering::emitProbedAlloca(), llvm::Thumb1FrameLowering::emitPrologue(), llvm::Mips16FrameLowering::emitPrologue(), llvm::MipsSEFrameLowering::emitPrologue(), llvm::XCoreFrameLowering::emitPrologue(), llvm::ARMFrameLowering::emitPrologue(), llvm::SIFrameLowering::emitPrologue(), llvm::ARCFrameLowering::emitPrologue(), llvm::WebAssemblyFrameLowering::emitPrologue(), llvm::SystemZFrameLowering::emitPrologue(), llvm::PPCFrameLowering::emitPrologue(), emitPrologueEpilogueSPUpdate(), llvm::VETargetLowering::emitSjLjDispatchBlock(), llvm::emitThumbRegPlusImmediate(), emitThumbRegPlusImmInReg(), emitXBegin(), llvm::MachineInstr::eraseFromParentAndMarkDBGValuesForRemoval(), llvm::execMayBeModifiedBeforeAnyUse(), llvm::execMayBeModifiedBeforeUse(), llvm::AMDGPURegisterBankInfo::executeInWaterfallLoop(), llvm::InstructionSelector::executeMatchTable(), llvm::SIInstrInfo::expandMovDPP64(), llvm::HexagonInstrInfo::expandPostRAPseudo(), llvm::HexagonBlockRanges::expandToSubRegs(), llvm::CallLowering::ValueHandler::extendRegister(), extractParts(), extractRsrcPtr(), llvm::PPCInstrInfo::finalizeInsInstrs(), llvm::SITargetLowering::finalizeLowering(), findLoopComponents(), findOnlyInterestingUse(), llvm::findPHICopyInsertPoint(), llvm::SIRegisterInfo::findReachingDef(), findScratchNonCalleeSaveRegister(), findSingleRegDef(), findSingleRegUse(), findStartOfTree(), findSurvivorBackwards(), llvm::SIRegisterInfo::findUnusedRegister(), findUseBetween(), llvm::LegalizationArtifactCombiner::ArtifactValueFinder::findValueFromDef(), llvm::AMDGPULegalizerInfo::fixStoreSourceType(), llvm::PPCInstrInfo::fixupIsDeadOrKill(), llvm::ScheduleDAGInstrs::fixupKills(), fixupPHIOpBanks(), llvm::PPCInstrInfo::foldFrameOffset(), llvm::VEInstrInfo::FoldImmediate(), llvm::SystemZInstrInfo::FoldImmediate(), llvm::ARMBaseInstrInfo::FoldImmediate(), llvm::SIInstrInfo::FoldImmediate(), llvm::PPCInstrInfo::FoldImmediate(), foldImmediates(), llvm::AArch64InstrInfo::foldMemoryOperandImpl(), llvm::SystemZInstrInfo::foldMemoryOperandImpl(), llvm::SIInstrInfo::foldMemoryOperandImpl(), foldVGPRCopyIntoRegSequence(), forceReg(), llvm::RegScavenger::forward(), llvm::AArch64InstrInfo::genAlternativeCodeSequence(), llvm::TargetInstrInfo::genAlternativeCodeSequence(), genFusedMultiply(), genFusedMultiplyAcc(), genFusedMultiplyAccNeg(), genFusedMultiplyIdx(), genFusedMultiplyIdxNeg(), genMaddR(), genNeg(), genTPEntry(), genTPLoopBody(), llvm::AArch64GISelUtils::getAArch64VectorSplat(), llvm::AArch64GISelUtils::getAArch64VectorSplatScalar(), llvm::LegalizerInfo::getAction(), llvm::SIInstrInfo::getAddNoCarry(), llvm::AMDGPURegisterBankInfo::getAGPROpMapping(), llvm::TargetRegisterInfo::getAllocatableSet(), llvm::AMDGPU::getBaseWithConstantOffset(), getBaseWithConstantOffset(), llvm::getBuildVectorConstantSplat(), llvm::FunctionLoweringInfo::getCatchPadExceptionPointerVReg(), getCmpOperandFoldingProfit(), llvm::getConstantFPVRegVal(), llvm::getConstantIntVRegVal(), llvm::getConstantVRegSExtVal(), llvm::getConstantVRegVal(), llvm::getConstantVRegValWithLookThrough(), getConstantZext32Val(), llvm::SIRegisterInfo::getConstrainedRegClassForOperand(), getCopyRegClasses(), getDataDeps(), llvm::AMDGPURegisterBankInfo::getDefaultMappingAllVGPR(), llvm::AMDGPURegisterBankInfo::getDefaultMappingSOP(), llvm::AMDGPURegisterBankInfo::getDefaultMappingVOP(), llvm::getDefIgnoringCopies(), getDefRegMask(), llvm::getDefSrcRegIgnoringCopies(), llvm::PPCInstrInfo::getFMAPatterns(), getFoldableImm(), llvm::getFunctionLiveInPhysReg(), llvm::AMDGPURegisterBankInfo::getImageMapping(), getImmedFromMO(), getImmOrMaterializedImm(), llvm::AMDGPULegalizerInfo::getImplicitArgPtr(), llvm::R600InstrInfo::getIndirectIndexBegin(), getIndirectSGPRIdx(), llvm::X86RegisterBankInfo::getInstrAlternativeMappings(), llvm::AArch64RegisterBankInfo::getInstrAlternativeMappings(), llvm::AMDGPURegisterBankInfo::getInstrAlternativeMappings(), llvm::AMDGPURegisterBankInfo::getInstrAlternativeMappingsIntrinsic(), llvm::AMDGPURegisterBankInfo::getInstrAlternativeMappingsIntrinsicWSideEffects(), llvm::ARMRegisterBankInfo::getInstrMapping(), llvm::MipsRegisterBankInfo::getInstrMapping(), llvm::X86RegisterBankInfo::getInstrMapping(), llvm::AArch64RegisterBankInfo::getInstrMapping(), llvm::AMDGPURegisterBankInfo::getInstrMapping(), llvm::AMDGPURegisterBankInfo::getInstrMappingForLoad(), llvm::RegisterBankInfo::getInstrMappingImpl(), llvm::RISCVInstrInfo::getInstSizeInBytes(), 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(), llvm::SIInstrInfo::getOpRegClass(), getPHIDeps(), llvm::MachineFrameInfo::getPristineRegs(), getRC32(), llvm::PPCRegisterInfo::getRegAllocationHints(), llvm::SystemZRegisterInfo::getRegAllocationHints(), llvm::X86RegisterInfo::getRegAllocationHints(), llvm::ARMBaseRegisterInfo::getRegAllocationHints(), llvm::TargetRegisterInfo::getRegAllocationHints(), llvm::RegisterBankInfo::getRegBank(), llvm::RegisterBankInfo::getRegBankFromConstraints(), llvm::AMDGPURegisterBankInfo::getRegBankID(), getRegClassesForCopy(), llvm::SIRegisterInfo::getRegClassForReg(), llvm::SIRegisterInfo::getRegClassForTypeOnBank(), llvm::VirtRegMap::getRegInfo(), llvm::LiveRangeCalc::getRegInfo(), llvm::LLVMDisasmContext::getRegisterInfo(), llvm::MCContext::getRegisterInfo(), llvm::AMDGPU::getRegOperandSize(), llvm::getRegPressure(), getRegSeqInit(), llvm::TargetRegisterInfo::getRegSizeInBits(), llvm::LiveIntervals::HMEditor::getRegUnitLI(), llvm::AMDGPULegalizerInfo::getSegmentAperture(), llvm::AMDGPURegisterBankInfo::getSGPROpMapping(), getSingleDef(), llvm::RegisterBankInfo::getSizeInBits(), getSrcFromCopy(), llvm::getSrcRegIgnoringCopies(), getSrcRegIgnoringCopies(), getSubRegForIndex(), getTestBitReg(), getTileShape(), getTypeFromTypeIdx(), llvm::MachineInstr::getTypeToPrint(), getUsedRegMask(), llvm::AMDGPURegisterBankInfo::getValueMappingForPtr(), llvm::SIInstrInfo::getVALUOp(), getVectorFCMP(), getVectorShiftImm(), getVectorSHLImm(), llvm::getVectorSplat(), llvm::AMDGPURegisterBankInfo::getVGPROpMapping(), llvm::NVPTXAsmPrinter::getVirtualRegisterName(), llvm::RISCVInstrInfo::getVLENFactoredAmount(), getVRegDef(), llvm::PerFunctionMIParsingState::getVRegInfo(), llvm::getVRegSubRegDef(), getWinAllocaAmount(), llvm::GISelInstProfileBuilder::GISelInstProfileBuilder(), llvm::CallLowering::handleAssignments(), llvm::AMDGPURegisterBankInfo::handleD16VData(), llvm::AMDGPULegalizerInfo::handleD16VData(), llvm::LiveIntervals::handleMove(), llvm::LiveIntervals::handleMoveIntoNewBundle(), hasAnyNonFlatUseOfReg(), hasArgumentDef(), llvm::X86InstrInfo::hasCommutePreference(), llvm::MCInstrDesc::hasImplicitDefOfPhysReg(), hasOneUse(), llvm::TargetInstrInfo::hasReassociableOperands(), llvm::TargetInstrInfo::hasReassociableSibling(), hasSameValue(), hasTiedDef(), hasUseAfterLoop(), hasVectorOperands(), llvm::SIInstrInfo::hasVGPRUses(), llvm::LiveIntervals::HMEditor::HMEditor(), hoistAndMergeSGPRInits(), llvm::GCNRegPressure::inc(), increaseSetPressure(), llvm::LiveRegSet::init(), INITIALIZE_PASS(), llvm::MIRParserImpl::initializeMachineFunction(), llvm::ARM_MC::initLLVMToCVRegMapping(), llvm::AArch64_MC::initLLVMToCVRegMapping(), llvm::X86_MC::initLLVMToSEHAndCVRegMapping(), llvm::WebAssemblyFunctionInfo::initWARegs(), llvm::PPCFrameLowering::inlineStackProbe(), llvm::VEInstrInfo::insertBranch(), insertCSRSaves(), llvm::SIInstrInfo::insertEQ(), llvm::RISCVInstrInfo::insertIndirectBranch(), llvm::SIInstrInfo::insertIndirectBranch(), llvm::SIInstrInfo::insertNE(), InsertNewDef(), insertPHI(), llvm::AArch64InstrInfo::insertSelect(), llvm::SystemZInstrInfo::insertSelect(), llvm::SIInstrInfo::insertSelect(), llvm::X86InstrInfo::insertSelect(), llvm::PPCInstrInfo::insertSelect(), llvm::CallLowering::insertSRetIncomingArgument(), llvm::CallLowering::insertSRetLoads(), llvm::CallLowering::insertSRetStores(), llvm::SIInstrInfo::insertVectorSelect(), llvm::SIRegisterInfo::isAGPR(), IsAGPROperand(), isBackwardPropagatableCopy(), llvm::InstructionSelector::isBaseWithConstantOffset(), llvm::isBuildVectorAllOnes(), llvm::isBuildVectorAllZeros(), isBuildVectorConstantSplat(), isCallerPreservedOrConstPhysReg(), llvm::SITargetLowering::isCanonicalized(), llvm::AArch64GISelUtils::isCMN(), isCopyFeedingInvariantStore(), isCrossCopy(), isCVTAToLocalCombinationCandidate(), isDefBetween(), isDefLiveOut(), llvm::SITargetLowering::isEligibleForTailCallOptimization(), llvm::AArch64InstrInfo::isExtendLikelyToBeFolded(), isFPR64(), isImplicitlyDef(), isImplicitlyDefined(), isInvariantStore(), isKilled(), llvm::isKnownNeverNaN(), llvm::isKnownNeverSNaN(), 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::isMustSet(), llvm::isNoModRef(), isNonZeroModBitWidthOrUndef(), isNot(), llvm::isOfRegClass(), llvm::InstructionSelector::isOperandImmEqual(), isOperandKill(), llvm::SIInstrInfo::isOperandLegal(), llvm::HexagonMCInstrInfo::isPredReg(), llvm::X86InstrInfo::isReallyTriviallyReMaterializable(), llvm::isRefSet(), isSafeToMove(), llvm::AMDGPURegisterBankInfo::isSALUMapping(), llvm::SITargetLowering::isSDNodeSourceOfDivergence(), llvm::SIRegisterInfo::isSGPRReg(), isSignExtended(), llvm::PPCInstrInfo::isSignOrZeroExtended(), isSimpleIf(), isSSA(), isTerminalReg(), llvm::isTriviallyDead(), isValidCopy(), isVCmpResult(), llvm::SIRegisterInfo::isVectorRegister(), llvm::SIRegisterInfo::isVGPR(), llvm::SIInstrInfo::isVGPRCopy(), AMDGPURegBankCombinerHelper::isVgprRegBank(), isVRegCompatibleReg(), isVShiftRImm(), isZero(), isZeroExtended(), llvm::AMDGPULegalizerInfo::legalizeAddrSpaceCast(), llvm::AMDGPULegalizerInfo::legalizeAtomicCmpXChg(), llvm::AMDGPULegalizerInfo::legalizeBufferLoad(), llvm::AMDGPULegalizerInfo::legalizeBufferStore(), llvm::AMDGPULegalizerInfo::legalizeBuildVector(), llvm::AMDGPULegalizerInfo::legalizeBVHIntrinsic(), llvm::MipsLegalizerInfo::legalizeCustom(), llvm::ARMLegalizerInfo::legalizeCustom(), llvm::AArch64LegalizerInfo::legalizeCustom(), llvm::AMDGPULegalizerInfo::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::legalizeFFloor(), llvm::AMDGPULegalizerInfo::legalizeFMad(), llvm::AMDGPULegalizerInfo::legalizeFPTOI(), llvm::AMDGPULegalizerInfo::legalizeFrem(), llvm::AMDGPULegalizerInfo::legalizeFrint(), llvm::SIInstrInfo::legalizeGenericOperand(), llvm::AMDGPULegalizerInfo::legalizeGlobalValue(), llvm::AMDGPULegalizerInfo::legalizeImageIntrinsic(), llvm::AMDGPULegalizerInfo::legalizeImplicitArgPtr(), llvm::AMDGPULegalizerInfo::legalizeInsertVectorElt(), llvm::AMDGPULegalizerInfo::legalizeIntrinsic(), llvm::AMDGPULegalizerInfo::legalizeIntrinsicTrunc(), llvm::AMDGPULegalizerInfo::legalizeIsAddrSpace(), llvm::AMDGPULegalizerInfo::legalizeITOFP(), llvm::AMDGPULegalizerInfo::legalizeLoad(), llvm::Legalizer::legalizeMachineFunction(), llvm::SIInstrInfo::legalizeOperands(), llvm::SIInstrInfo::legalizeOperandsFLAT(), llvm::SIInstrInfo::legalizeOperandsSMRD(), llvm::SIInstrInfo::legalizeOperandsVOP2(), llvm::SIInstrInfo::legalizeOperandsVOP3(), llvm::SIInstrInfo::legalizeOpWithMove(), llvm::AMDGPULegalizerInfo::legalizeRsqClampIntrinsic(), llvm::AMDGPULegalizerInfo::legalizeShuffleVector(), llvm::AMDGPULegalizerInfo::legalizeSignedDIV_REM(), llvm::AMDGPULegalizerInfo::legalizeSinCos(), llvm::AMDGPULegalizerInfo::legalizeTrapHsaQueuePtr(), llvm::AMDGPULegalizerInfo::legalizeTrapIntrinsic(), llvm::AMDGPULegalizerInfo::legalizeUnsignedDIV_REM(), llvm::LiveRangeEdit::LiveRangeEdit(), LLVMCreateDisasmCPUFeatures(), llvm::LLVMDisasmContext::LLVMDisasmContext(), LLVMSetDisasmOptions(), loadM0FromVGPR(), llvm::Thumb2InstrInfo::loadRegFromStackSlot(), llvm::SIInstrInfo::loadRegFromStackSlot(), LookThroughCOPY(), llvm::TargetRegisterInfo::lookThruCopyLike(), llvm::TargetRegisterInfo::lookThruSingleUseCopyChain(), llvm::WebAssemblyMCInstLower::lower(), llvm::LegalizerHelper::lower(), llvm::X86CallLowering::lowerCall(), llvm::ARMCallLowering::lowerCall(), llvm::AArch64CallLowering::lowerCall(), llvm::AMDGPUCallLowering::lowerCall(), llvm::HexagonTargetLowering::LowerCallResult(), LowerCallResults(), llvm::PPCCallLowering::lowerFormalArguments(), llvm::X86CallLowering::lowerFormalArguments(), llvm::M68kCallLowering::lowerFormalArguments(), llvm::AArch64CallLowering::lowerFormalArguments(), llvm::AMDGPUCallLowering::lowerFormalArguments(), llvm::HexagonTargetLowering::LowerFormalArguments(), llvm::SystemZTargetLowering::LowerFormalArguments(), llvm::AMDGPUCallLowering::lowerFormalArgumentsKernel(), LowerFPToInt(), llvm::InlineAsmLowering::lowerInlineAsm(), llvm::X86CallLowering::lowerReturn(), llvm::M68kCallLowering::lowerReturn(), llvm::AArch64CallLowering::lowerReturn(), llvm::AMDGPUCallLowering::lowerReturn(), llvm::AMDGPUCallLowering::lowerTailCall(), lowerVectorFCMP(), llvm::BitTracker::MachineEvaluator::MachineEvaluator(), llvm::machineFunctionIsIllegal(), llvm::MIPatternMatch::OneUse_match< SubPatternT >::match(), llvm::MIPatternMatch::OneNonDBGUse_match< SubPatternT >::match(), llvm::MIPatternMatch::ConstantMatch::match(), llvm::MIPatternMatch::ICstRegMatch::match(), llvm::MIPatternMatch::SpecificConstantMatch::match(), llvm::MIPatternMatch::And< Pred, Preds... >::match(), llvm::MIPatternMatch::Or< Pred, Preds... >::match(), llvm::MIPatternMatch::bind_ty< Class >::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 >::match(), llvm::MIPatternMatch::CheckType::match(), llvm::MIPatternMatch::TernaryOp_match< Src0Ty, Src1Ty, Src2Ty, Opcode >::match(), matchAArch64MulConstCombine(), matchAdjustICmpImmAndPred(), matchAliasCondition(), matchBuildVectorToDup(), AMDGPUPreLegalizerCombinerHelper::matchClampI64ToI16(), AMDGPUPostLegalizerCombinerHelper::matchCvtF32UByteN(), matchDup(), matchDupFromBuildVector(), matchDupFromInsertVectorElt(), matchDupLane(), matchEXT(), matchExtractVecEltPairwiseAdd(), matchFConstantToConstant(), AMDGPUPostLegalizerCombinerHelper::matchFMinFMaxLegacy(), matchFoldGlobalOffset(), matchFoldMergeToZext(), matchFormTruncstore(), matchICmpRedundantTrunc(), MatchingStackOffset(), matchINS(), AMDGPURegBankCombinerHelper::matchIntMinMaxToMed3(), matchLoadAndBytePosition(), AMDGPURegBankCombinerHelper::matchMed(), matchREV(), matchSwap(), matchTRN(), AMDGPUPostLegalizerCombinerHelper::matchUCharToFloat(), llvm::matchUnaryPredicate(), matchUZP(), matchVAshrLshrImm(), matchZeroExtendFromS32(), matchZip(), llvm::SIRegisterInfo::materializeFrameBaseRegister(), llvm::AArch64RegisterInfo::materializeFrameBaseRegister(), llvm::PPCRegisterInfo::materializeFrameBaseRegister(), llvm::ARMBaseRegisterInfo::materializeFrameBaseRegister(), llvm::SIInstrInfo::materializeImmediate(), maybeRewriteToDrop(), llvm::SIInstrInfo::mayReadEXEC(), mergeVectorRegsToResultRegs(), llvm::MIPatternMatch::mi_match(), llvm::ModuloScheduleExpander::ModuloScheduleExpander(), moveAndTeeForMultiUse(), llvm::SIInstrInfo::moveFlatAddrToVGPR(), moveForSingleUse(), moveOperands(), llvm::SIInstrInfo::moveToVALU(), llvm::RISCVInstrInfo::movImm(), needToReserveScavengingSpillSlots(), oneUseDominatesOtherUses(), optimizeCall(), llvm::LanaiInstrInfo::optimizeCompareInstr(), llvm::AArch64InstrInfo::optimizeCompareInstr(), llvm::ARMBaseInstrInfo::optimizeCompareInstr(), llvm::X86InstrInfo::optimizeCompareInstr(), llvm::PPCInstrInfo::optimizeCompareInstr(), llvm::AArch64InstrInfo::optimizeCondBranch(), llvm::BranchFolder::OptimizeFunction(), llvm::X86InstrInfo::optimizeLoadInstr(), llvm::LanaiInstrInfo::optimizeSelect(), llvm::ARMBaseInstrInfo::optimizeSelect(), llvm::CallLowering::parametersInCSRMatch(), llvm::TargetLowering::parametersInCSRMatch(), llvm::AMDGPUCallLowering::passSpecialInputs(), peekThroughBitcast(), llvm::PeelSingleBlockLoop(), llvm::HexagonInstrInfo::PredicateInstruction(), llvm::VETargetLowering::prepareMBB(), llvm::VETargetLowering::prepareSymbol(), llvm::prettyPrintRegisterOp(), llvm::MIPrinter::print(), llvm::MachineOperand::print(), llvm::MachineBasicBlock::print(), llvm::MachineInstr::print(), llvm::SystemZAsmPrinter::PrintAsmOperand(), llvm::DWARFExpression::printCompact(), llvm::printCompactDWARFExpr(), printFPOReg(), llvm::printLivesAt(), PrintNodeInfo(), llvm::printReg(), printRegister(), llvm::SystemZFrameLowering::processFunctionBeforeFrameFinalized(), llvm::SIFrameLowering::processFunctionBeforeFrameFinalized(), llvm::ARMBaseInstrInfo::produceSameValue(), propagateLocalCopies(), llvm::PSetIterator::PSetIterator(), llvm::SIInstrInfo::readlaneVGPRToSGPR(), llvm::TargetInstrInfo::reassociateOps(), llvm::RegPressureTracker::recede(), llvm::recomputeLivenessFlags(), regIsPICBase(), reinsertVectorIndexAdd(), rematerializeCheapDef(), removeCopies(), llvm::MachineInstr::RemoveOperand(), replaceDominatedUses(), llvm::LegalizationArtifactCombiner::replaceRegOrBuildCopy(), replaceRegUsesAfterLoop(), llvm::SITargetLowering::requiresUniformRegister(), rescheduleCanonically(), reservePrivateMemoryRegs(), llvm::PPCRegisterInfo::resolveFrameIndex(), llvm::M68kFrameLowering::restoreCalleeSavedRegisters(), llvm::rewriteT2FrameIndex(), llvm::InstructionSelect::runOnMachineFunction(), llvm::WebAssemblyAsmPrinter::runOnMachineFunction(), llvm::SelectionDAGISel::runOnMachineFunction(), llvm::VirtRegMap::runOnMachineFunction(), llvm::ExecutionDomainFix::runOnMachineFunction(), llvm::MachineFunction::salvageCopySSA(), llvm::scavengeFrameVirtualRegs(), scavengeFrameVirtualRegsInBlock(), llvm::RegScavenger::scavengeRegisterBackwards(), scavengeVReg(), selectCopy(), selectMergeValues(), llvm::AMDGPURegisterBankInfo::selectStoreIntrinsic(), selectUnmergeValues(), setBufferOffsets(), llvm::MachineOperand::setIsDef(), llvm::setMod(), llvm::setModAndRef(), llvm::setMust(), llvm::setRef(), llvm::MachineOperand::setReg(), llvm::MipsRegisterBankInfo::setRegBank(), llvm::CoalescerPair::setRegisters(), setRegsToType(), llvm::MIRParserImpl::setupRegisterInfo(), llvm::ShapeT::ShapeT(), llvm::ARMBaseRegisterInfo::shouldCoalesce(), llvm::TargetLoweringBase::shouldLocalize(), llvm::PPCInstrInfo::shouldReduceRegisterPressure(), llvm::TargetRegisterInfo::shouldRegionSplitForVirtReg(), shrinkScalarLogicOp(), llvm::SMSchedule::SMSchedule(), llvm::Thumb1FrameLowering::spillCalleeSavedRegisters(), llvm::AArch64FrameLowering::spillCalleeSavedRegisters(), llvm::X86FrameLowering::spillCalleeSavedRegisters(), llvm::M68kFrameLowering::spillCalleeSavedRegisters(), llvm::PPCFrameLowering::spillCalleeSavedRegisters(), spillVGPRtoAGPR(), llvm::AMDGPURegisterBankInfo::split64BitValueForMapping(), llvm::AMDGPULegalizerInfo::splitBufferOffsets(), llvm::MachineBasicBlock::SplitCriticalEdge(), splitMBB(), llvm::LiveIntervals::splitSeparateComponents(), llvm::stableHashValue(), llvm::WebAssemblyFunctionInfo::stackifyVReg(), llvm::Thumb2InstrInfo::storeRegToStackSlot(), llvm::SIInstrInfo::storeRegToStackSlot(), stripAnySourceMods(), toggleKills(), tryAddToFoldList(), tryAdjustICmpImmAndPred(), tryChangeVGPRtoSGPRinCopy(), llvm::LegalizationArtifactCombiner::tryCombineAnyExt(), llvm::LegalizationArtifactCombiner::tryCombineExtract(), llvm::LegalizationArtifactCombiner::tryCombineInstruction(), llvm::LegalizationArtifactCombiner::tryCombineSExt(), llvm::LegalizationArtifactCombiner::tryCombineTrunc(), llvm::LegalizationArtifactCombiner::ArtifactValueFinder::tryCombineUnmergeDefs(), llvm::LegalizationArtifactCombiner::tryCombineUnmergeValues(), llvm::LegalizationArtifactCombiner::tryCombineZExt(), tryConstantFoldOp(), llvm::AArch64GISelUtils::tryEmitBZero(), llvm::LegalizationArtifactCombiner::tryFoldImplicitDef(), llvm::LegalizationArtifactCombiner::tryFoldUnmergeCast(), trySwapICmpOperands(), tryToFoldACImm(), tryToGetTargetInfo(), unstackifyVRegsUsedInSplitBB(), unsupportedBinOp(), llvm::LiveIntervals::HMEditor::updateAllRanges(), llvm::AMDGPULegalizerInfo::updateBufferMMO(), updateOperand(), UpdateOperandRegClass(), updateOperandRegConstraints(), updatePHIs(), llvm::ARMBaseRegisterInfo::updateRegAllocHint(), llvm::SIInstrInfo::usesConstantBus(), llvm::LiveInterval::verify(), verifyCFIntrinsic(), llvm::SIInstrInfo::verifyInstruction(), verifyLeafProcRegUse(), llvm::VirtRegMap::VirtRegMap(), llvm::VRegRenamer::VRegRenamer(), 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::ScheduleDAGInstrs::addPhysRegDeps(), llvm::MachineInstrBuilder::addReg(), llvm::MachineInstrBuilder::addUse(), llvm::SIInstrInfo::buildExtractSubReg(), llvm::SIInstrInfo::buildExtractSubRegOrImm(), llvm::SIRegisterInfo::buildSpillLoadStore(), llvm::LiveIntervalCalc::calculate(), llvm::LiveInterval::computeSubRangeUndefs(), llvm::AArch64InstrInfo::copyGPRRegTuple(), llvm::AArch64InstrInfo::copyPhysRegTuple(), copySubReg(), llvm::MachineOperand::CreateReg(), emitIndirectDst(), emitIndirectSrc(), llvm::InstructionSelector::executeMatchTable(), llvm::SIInstrInfo::expandPostRAPseudo(), extractSubReg(), llvm::finalizeBundle(), llvm::SIRegisterInfo::findReachingDef(), llvm::TargetInstrInfo::foldMemoryOperand(), llvm::X86InstrInfo::foldMemoryOperandImpl(), foldVGPRCopyIntoRegSequence(), llvm::RegScavenger::forward(), llvm::SIRegisterInfo::getChannelFromSubReg(), llvm::ScheduleDAGInstrs::getLaneMaskForMO(), llvm::SIRegisterInfo::getNumChannelsFromSubReg(), llvm::SIInstrInfo::getOpSize(), llvm::getRegSequenceSubReg(), llvm::X86RegisterInfo::getReservedRegs(), getSrcFromCopy(), llvm::SuperRegClassIterator::getSubReg(), getSubRegForClass(), llvm::MCRegisterInfo::getSubRegIndex(), getUsedRegMask(), insertPHI(), insertSubReg(), instAccessReg(), instModifiesReg(), instReadsReg(), isCrossCopy(), isFPR64(), isSubRegOf(), narrowIfNeeded(), llvm::SuperRegClassIterator::operator++(), llvm::MachineOperand::print(), llvm::ARMAsmPrinter::PrintAsmOperand(), llvm::SIRegisterInfo::restoreSGPR(), llvm::MachineFunction::salvageCopySSA(), selectCopy(), llvm::MipsRegInfoRecord::SetPhysRegUsed(), llvm::AVRRegisterInfo::shouldCoalesce(), llvm::LiveIntervals::shrinkToUses(), llvm::SIRegisterInfo::spillSGPR(), swapRegAndNonRegOperand(), llvm::LiveIntervals::HMEditor::updateAllRanges(), llvm::AArch64RegisterInfo::UpdateCustomCallPreservedMask(), and Widen().

◆ TransformAll

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