reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

Declarations

include/llvm/CodeGen/TargetPassConfig.h
  442   void addPass(Pass *P, bool verifyAfter = true, bool printAfter = true);

References

lib/CodeGen/TargetPassConfig.cpp
  547         addPass(IP.getInsertedPass(), IP.VerifyAfter, IP.PrintAfter);
  583   addPass(P, verifyAfter, printAfter); // Ends the lifetime of P.
  613     addPass(createCFLSteensAAWrapperPass());
  616     addPass(createCFLAndersAAWrapperPass());
  619     addPass(createCFLAndersAAWrapperPass());
  620     addPass(createCFLSteensAAWrapperPass());
  630   addPass(createTypeBasedAAWrapperPass());
  631   addPass(createScopedNoAliasAAWrapperPass());
  632   addPass(createBasicAAWrapperPass());
  637     addPass(createVerifierPass());
  641     addPass(createLoopStrengthReducePass());
  643       addPass(createPrintFunctionPass(dbgs(), "\n\n*** Code after LSR ***\n"));
  652       addPass(createMergeICmpsLegacyPass());
  653     addPass(createExpandMemCmpPass());
  658   addPass(createGCLoweringPass());
  659   addPass(createShadowStackGCLoweringPass());
  660   addPass(createLowerConstantIntrinsicsPass());
  663   addPass(createUnreachableBlockEliminationPass());
  667     addPass(createConstantHoistingPass());
  670     addPass(createPartiallyInlineLibCallsPass());
  673   addPass(createPostInlineEntryExitInstrumenterPass());
  678   addPass(createScalarizeMaskedMemIntrinPass());
  681   addPass(createExpandReductionsPass());
  697     addPass(createSjLjEHPreparePass());
  701     addPass(createDwarfEHPass());
  707     addPass(createWinEHPass());
  708     addPass(createDwarfEHPass());
  715     addPass(createWinEHPass(/*DemoteCatchSwitchPHIOnly=*/false));
  716     addPass(createWasmEHPass());
  719     addPass(createLowerInvokePass());
  722     addPass(createUnreachableBlockEliminationPass());
  731     addPass(createCodeGenPreparePass());
  732   addPass(createRewriteSymbolsPass());
  742     addPass(new DummyCGSCCPass);
  746   addPass(createSafeStackPass());
  747   addPass(createStackProtectorPass());
  750     addPass(createPrintFunctionPass(
  756     addPass(createVerifierPass());
  811     addPass(createResetMachineFunctionPass(
  834     addPass(createLowerEmuTLSPass());
  836   addPass(createPreISelIntrinsicLoweringPass());
  837   addPass(createTargetTransformInfoWrapperPass(TM->getTargetIRAnalysis()));
  898     addPass(createRegUsageInfoPropPass());
  922       addPass(createPrologEpilogInserterPass());
  951       addPass(createGCInfoPrinter(dbgs()), false, false);
  963     addPass(createRegUsageInfoCollector());
  982       addPass(createMachineOutlinerPass(RunOnAllFunctions));
 1099   addPass(createRegAllocPass(false));
 1105   addPass(createRegAllocPass(true));
lib/Target/AArch64/AArch64TargetMachine.cpp
  421   addPass(createAtomicExpandPass());
  427     addPass(createCFGSimplificationPass(1, true, true, false, true));
  435       addPass(createLoopDataPrefetchPass());
  437       addPass(createFalkorMarkStridedAccessesPass());
  444     addPass(createInterleavedLoadCombinePass());
  445     addPass(createInterleavedAccessPass());
  452     addPass(createSeparateConstOffsetFromGEPPass(true));
  455     addPass(createEarlyCSEPass());
  458     addPass(createLICMPass());
  461   addPass(createAArch64StackTaggingPass(/* MergeInit = */ TM->getOptLevel() !=
  466     addPass(createCFGuardCheckPass());
  474     addPass(createAArch64PromoteConstantPass());
  495     addPass(createGlobalMergePass(TM, 4095, OnlyOptimizeForSize,
  503   addPass(createAArch64ISelDag(getAArch64TargetMachine(), getOptLevel()));
  509     addPass(createAArch64CleanupLocalDynamicTLSPass());
  515   addPass(new IRTranslator());
  521   addPass(createAArch64PreLegalizeCombiner(IsOptNone));
  525   addPass(new Legalizer());
  530   addPass(new RegBankSelect());
  535   addPass(new Localizer());
  539   addPass(new InstructionSelect());
  545     addPass(createAArch64ConditionOptimizerPass());
  547     addPass(createAArch64ConditionalCompares());
  551     addPass(createAArch64CondBrTuning());
  555     addPass(createAArch64StorePairSuppressPass());
  556   addPass(createAArch64SIMDInstrOptPass());
  558     addPass(createAArch64StackTaggingPreRAPass());
  565     addPass(createAArch64DeadRegisterDefinitions());
  569     addPass(createAArch64AdvSIMDScalar());
  579     addPass(createAArch64RedundantCopyEliminationPass());
  583     addPass(createAArch64A57FPLoadBalancing());
  588   addPass(createAArch64ExpandPseudoPass());
  592       addPass(createAArch64LoadStoreOptimizationPass());
  600   addPass(createAArch64SpeculationHardeningPass());
  604       addPass(createFalkorHWPFFixPass());
  613     addPass(createAArch64LoadStoreOptimizationPass());
  616     addPass(createAArch64A53Fix835769());
  623     addPass(createAArch64BranchTargetsPass());
  627     addPass(createCFGuardLongjmpPass());
  630     addPass(createAArch64CompressJumpTablesPass());
  634     addPass(createAArch64CollectLOHPass());
lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
  634     addPass(createGVNPass());
  636     addPass(createEarlyCSEPass());
  640   addPass(createLICMPass());
  641   addPass(createSeparateConstOffsetFromGEPPass());
  642   addPass(createSpeculativeExecutionPass());
  645   addPass(createStraightLineStrengthReducePass());
  650   addPass(createNaryReassociatePass());
  653   addPass(createEarlyCSEPass());
  664   addPass(createAMDGPUPrintfRuntimeBinding());
  668   addPass(createAMDGPUFixFunctionBitcastsPass());
  671   addPass(createAMDGPUPropagateAttributesEarlyPass(&TM));
  673   addPass(createAtomicExpandPass());
  676   addPass(createAMDGPULowerIntrinsicsPass());
  679   addPass(createAMDGPUAlwaysInlinePass());
  680   addPass(createAlwaysInlinerLegacyPass());
  686   addPass(createBarrierNoopPass());
  690     addPass(createR600OpenCLImageTypeLoweringPass());
  693   addPass(createAMDGPUOpenCLEnqueuedBlockLoweringPass());
  696     addPass(createInferAddressSpacesPass());
  697     addPass(createAMDGPUPromoteAlloca());
  700       addPass(createSROAPass());
  706       addPass(createAMDGPUAAWrapperPass());
  707       addPass(createExternalAAWrapperPass([](Pass &P, Function &,
  717     addPass(createAMDGPUCodeGenPreparePass());
  740     addPass(createAMDGPUAnnotateKernelFeaturesPass());
  744     addPass(createAMDGPULowerKernelArgumentsPass());
  751     addPass(createLoadStoreVectorizerPass());
  755   addPass(createLowerSwitchPass());
  756   addPass(createFlattenCFGPass());
  762   addPass(createAMDGPUISelDag(&getAMDGPUTargetMachine(), getOptLevel()), false);
  779     addPass(createStructurizeCFGPass());
  784   addPass(createR600ISelDag(&getAMDGPUTargetMachine(), getOptLevel()));
  789   addPass(createR600VectorRegMerger());
  793   addPass(createR600EmitClauseMarkers(), false);
  796   addPass(createR600ClauseMergePass(), false);
  800   addPass(createAMDGPUCFGStructurizerPass(), false);
  801   addPass(createR600ExpandSpecialInstrsPass(), false);
  803   addPass(createR600Packetizer(), false);
  804   addPass(createR600ControlFlowFinalizer(), false);
  827     addPass(createAMDGPUAtomicOptimizerPass());
  837     addPass(createStructurizeCFGPass(true)); // true -> SkipUniformRegions
  839   addPass(createSinkingPass());
  840   addPass(createAMDGPUAnnotateUniformValues());
  842     addPass(createSIAnnotateControlFlowPass());
  844   addPass(createLCSSAPass());
  871   addPass(createSIShrinkInstructionsPass());
  885   addPass(createSILowerI1CopiesPass());
  886   addPass(createSIFixupVectorISelPass());
  887   addPass(createSIAddIMGInitPass());
  892   addPass(new IRTranslator());
  897   addPass(new Legalizer());
  902   addPass(new RegBankSelect());
  907   addPass(new InstructionSelect());
  913     addPass(createAMDGPUMachineCFGStructurizerPass());
  915   addPass(createSIWholeQuadModePass());
  977   addPass(createSIMemoryLegalizerPass());
  978   addPass(createSIInsertWaitcntsPass());
  979   addPass(createSIShrinkInstructionsPass());
  980   addPass(createSIModeRegisterPass());
lib/Target/ARC/ARCTargetMachine.cpp
   72   addPass(createARCISelDag(getARCTargetMachine(), getOptLevel()));
   76 void ARCPassConfig::addPreEmitPass() { addPass(createARCBranchFinalizePass()); }
   79     addPass(createARCExpandPseudosPass());
   80     addPass(createARCOptAddrMode());
lib/Target/ARM/ARMTargetMachine.cpp
  401     addPass(createLowerAtomicPass());
  403     addPass(createAtomicExpandPass());
  409     addPass(createCFGSimplificationPass(
  419     addPass(createARMParallelDSPPass());
  423     addPass(createInterleavedAccessPass());
  427     addPass(createCFGuardCheckPass());
  432     addPass(createARMCodeGenPreparePass());
  452     addPass(createGlobalMergePass(TM, 127, OnlyOptimizeForSize,
  457     addPass(createHardwareLoopsPass());
  458     addPass(createMVETailPredicationPass());
  465   addPass(createARMISelDag(getARMTargetMachine(), getOptLevel()));
  470   addPass(new IRTranslator());
  475   addPass(new Legalizer());
  480   addPass(new RegBankSelect());
  485   addPass(new InstructionSelect());
  491     addPass(createMLxExpansionPass());
  494       addPass(createARMLoadStoreOptimizationPass(/* pre-register alloc */ true));
  497       addPass(createA15SDOptimizerPass());
  504       addPass(createARMLoadStoreOptimizationPass());
  506     addPass(new ARMExecutionDomainFix());
  507     addPass(createBreakFalseDeps());
  512   addPass(createARMExpandPseudoPass());
  516     addPass(createThumb2SizeReductionPass([this](const Function &F) {
  520     addPass(createIfConverter([](const MachineFunction &MF) {
  524   addPass(createMVEVPTBlockPass());
  525   addPass(createThumb2ITBlockPass());
  529   addPass(createThumb2SizeReductionPass());
  532   addPass(createUnpackMachineBundles([](const MachineFunction &MF) {
  538     addPass(createARMOptimizeBarriersPass());
  540   addPass(createARMConstantIslandPass());
  541   addPass(createARMLowOverheadLoopsPass());
  545     addPass(createCFGuardLongjmpPass());
lib/Target/AVR/AVRTargetMachine.cpp
  102   addPass(createAVRISelDag(getAVRTargetMachine(), getOptLevel()));
  104   addPass(createAVRFrameAnalyzerPass());
  111   addPass(createAVRDynAllocaSRPass());
  115   addPass(createAVRRelaxMemPass());
  116   addPass(createAVRExpandPseudoPass());
lib/Target/BPF/BPFTargetMachine.cpp
   98   addPass(createBPFAbstractMemberAccess(&getBPFTargetMachine()));
  106   addPass(createBPFISelDag(getBPFTargetMachine()));
  112   addPass(createBPFMISimplifyPatchablePass());
  121       addPass(createBPFMIPeepholePass());
  122     addPass(createBPFMIPeepholeTruncElimPass());
  127   addPass(createBPFMIPreEmitCheckingPass());
  130       addPass(createBPFMIPreEmitPeepholePass());
lib/Target/Hexagon/HexagonTargetMachine.cpp
  307     addPass(createConstantPropagationPass());
  308     addPass(createDeadCodeEliminationPass());
  311   addPass(createAtomicExpandPass());
  315       addPass(createCFGSimplificationPass(1, true, true, false, true));
  317       addPass(createLoopDataPrefetchPass());
  319       addPass(createHexagonCommonGEP());
  322       addPass(createHexagonGenExtract());
  331     addPass(createHexagonOptimizeSZextends());
  333   addPass(createHexagonISelDag(TM, getOptLevel()));
  337       addPass(createHexagonVExtract());
  340       addPass(createHexagonGenPredicate());
  343       addPass(createHexagonLoopRescheduling());
  346       addPass(createHexagonSplitDoubleRegs());
  349       addPass(createHexagonBitSimplify());
  350     addPass(createHexagonPeephole());
  353       addPass(createHexagonConstPropagationPass());
  357       addPass(createHexagonGenInsert());
  359       addPass(createHexagonEarlyIfConversion());
  368       addPass(createHexagonConstExtenders());
  372       addPass(createHexagonStoreWidening());
  374       addPass(createHexagonHardwareLoops());
  383       addPass(createHexagonRDFOpt());
  385       addPass(createHexagonCFGOptimizer());
  387       addPass(createHexagonOptAddrMode());
  392   addPass(createHexagonCopyToCombine());
  395   addPass(createHexagonSplitConst32AndConst64());
  402     addPass(createHexagonNewValueJump());
  404   addPass(createHexagonBranchRelaxation());
  408       addPass(createHexagonFixupHwLoops());
  411       addPass(createHexagonGenMux());
  415   addPass(createHexagonPacketizer(NoOpt), false);
  418     addPass(createHexagonVectorPrint(), false);
  421   addPass(createHexagonCallFrameInformation(), false);
lib/Target/Lanai/LanaiTargetMachine.cpp
  101   addPass(createLanaiISelDag(getLanaiTargetMachine()));
  108   addPass(createLanaiDelaySlotFillerPass(getLanaiTargetMachine()));
  114   addPass(createLanaiMemAluCombinerPass());
lib/Target/MSP430/MSP430TargetMachine.cpp
   78   addPass(createMSP430ISelDag(getMSP430TargetMachine(), getOptLevel()));
   84   addPass(createMSP430BranchSelectionPass(), false);
lib/Target/Mips/MipsTargetMachine.cpp
  262   addPass(createAtomicExpandPass());
  264     addPass(createMipsOs16Pass());
  266     addPass(createMips16HardFloatPass());
  271   addPass(createMipsModuleISelDagPass());
  272   addPass(createMips16ISelDag(getMipsTargetMachine(), getOptLevel()));
  273   addPass(createMipsSEISelDag(getMipsTargetMachine(), getOptLevel()));
  278   addPass(createMipsOptimizePICCallPass());
  298   addPass(createMipsExpandPseudoPass());
  302   addPass(createMicroMipsSizeReducePass());
  306   addPass(createMipsDelaySlotFillerPass());
  316   addPass(createMipsBranchExpansion());
  318   addPass(createMipsConstantIslandPass());
  322   addPass(new IRTranslator());
  327   addPass(createMipsPreLegalizeCombiner());
  331   addPass(new Legalizer());
  336   addPass(new RegBankSelect());
  341   addPass(new InstructionSelect());
lib/Target/NVPTX/NVPTXTargetMachine.cpp
  215     addPass(createGVNPass());
  217     addPass(createEarlyCSEPass());
  223   addPass(createSROAPass());
  224   addPass(createNVPTXLowerAllocaPass());
  225   addPass(createInferAddressSpacesPass());
  229   addPass(createSeparateConstOffsetFromGEPPass());
  230   addPass(createSpeculativeExecutionPass());
  233   addPass(createStraightLineStrengthReducePass());
  239   addPass(createNaryReassociatePass());
  242   addPass(createEarlyCSEPass());
  267   addPass(createNVVMReflectPass(ST.getSmVersion()));
  270     addPass(createNVPTXImageOptimizerPass());
  271   addPass(createNVPTXAssignValidGlobalNamesPass());
  272   addPass(createGenericToNVVMPass());
  276   addPass(createNVPTXLowerArgsPass(&getNVPTXTargetMachine()));
  280       addPass(createLoadStoreVectorizerPass());
  305   addPass(createLowerAggrCopies());
  306   addPass(createAllocaHoisting());
  307   addPass(createNVPTXISelDag(getNVPTXTargetMachine(), getOptLevel()));
  310     addPass(createNVPTXReplaceImageHandlesPass());
  317   addPass(createNVPTXProxyRegErasurePass());
  321   addPass(createNVPTXPrologEpilogPass(), false);
  326     addPass(createNVPTXPeephole());
lib/Target/PowerPC/PPCTargetMachine.cpp
  401     addPass(createPPCBoolRetToIntPass());
  402   addPass(createAtomicExpandPass());
  411     addPass(createLoopDataPrefetchPass());
  417     addPass(createSeparateConstOffsetFromGEPPass(true));
  420     addPass(createEarlyCSEPass());
  423     addPass(createLICMPass());
  431     addPass(createPPCLoopPreIncPrepPass(getPPCTargetMachine()));
  434     addPass(createHardwareLoopsPass());
  450   addPass(createPPCISelDag(getPPCTargetMachine(), getOptLevel()));
  454     addPass(createPPCCTRLoopsVerify());
  457   addPass(createPPCVSXCopyPass());
  465     addPass(createPPCBranchCoalescingPass());
  471     addPass(createPPCVSXSwapRemovalPass());
  474     addPass(createPPCReduceCRLogicalsPass());
  478     addPass(createPPCMIPeepholePass());
  497     addPass(createPPCTLSDynamicCallPass());
  500     addPass(createPPCTOCRegDepsPass());
  514       addPass(createPPCQPXLoadSplatPass());
  519   addPass(createPPCPreEmitPeepholePass());
  520   addPass(createPPCExpandISELPass());
  523     addPass(createPPCEarlyReturnPass(), false);
  525   addPass(createPPCBranchSelectionPass(), false);
lib/Target/RISCV/RISCVTargetMachine.cpp
  103   addPass(createAtomicExpandPass());
  108   addPass(createRISCVISelDag(getRISCVTargetMachine()));
  114   addPass(new IRTranslator());
  119   addPass(new Legalizer());
  124   addPass(new RegBankSelect());
  129   addPass(new InstructionSelect());
  139   addPass(createRISCVExpandPseudoPass());
  143   addPass(createRISCVMergeBaseOffsetOptPass());
lib/Target/Sparc/SparcTargetMachine.cpp
  164   addPass(createAtomicExpandPass());
  170   addPass(createSparcISelDag(getSparcTargetMachine()));
  175   addPass(createSparcDelaySlotFillerPass());
  179     addPass(new InsertNOPLoad());
  182     addPass(new DetectRoundChange());
  186     addPass(new FixAllFDIVSQRT());
lib/Target/SystemZ/SystemZTargetMachine.cpp
  196     addPass(createSystemZTDCPass());
  197     addPass(createLoopDataPrefetchPass());
  204   addPass(createSystemZISelDag(getSystemZTargetMachine(), getOptLevel()));
  207     addPass(createSystemZLDCleanupPass(getSystemZTargetMachine()));
  218   addPass(createSystemZPostRewritePass(getSystemZTargetMachine()));
  225     addPass(createSystemZPostRewritePass(getSystemZTargetMachine()));
  238     addPass(createSystemZShortenInstPass(getSystemZTargetMachine()), false);
  264     addPass(createSystemZElimComparePass(getSystemZTargetMachine()), false);
  265   addPass(createSystemZLongBranchPass(getSystemZTargetMachine()));
lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
  343   addPass(new CoalesceFeaturesAndStripAtomics(&getWebAssemblyTargetMachine()));
  346   addPass(createAtomicExpandPass());
  349   addPass(createWebAssemblyAddMissingPrototypes());
  352   addPass(createWebAssemblyLowerGlobalDtors());
  356   addPass(createWebAssemblyFixFunctionBitcasts());
  360     addPass(createWebAssemblyOptimizeReturned());
  369     addPass(createLowerInvokePass());
  372     addPass(createUnreachableBlockEliminationPass());
  377     addPass(createWebAssemblyLowerEmscriptenEHSjLj(EnableEmException,
  381   addPass(createIndirectBrExpandPass());
  388   addPass(
  393   addPass(createWebAssemblyArgumentMove());
  397   addPass(createWebAssemblySetP2AlignOperands());
  429   addPass(createWebAssemblyCallIndirectFixup());
  432   addPass(createWebAssemblyFixIrreducibleControlFlow());
  436   addPass(createWebAssemblyLateEHPrepare());
  441   addPass(createWebAssemblyReplacePhysRegs());
  446     addPass(createWebAssemblyPrepareForLiveIntervals());
  449     addPass(createWebAssemblyOptimizeLiveIntervals());
  452     addPass(createWebAssemblyMemIntrinsicResults());
  459     addPass(createWebAssemblyRegStackify());
  464     addPass(createWebAssemblyRegColoring());
  469   addPass(createWebAssemblyCFGSort());
  472   addPass(createWebAssemblyCFGStackify());
  475   addPass(createWebAssemblyExplicitLocals());
  478   addPass(createWebAssemblyLowerBrUnless());
  482     addPass(createWebAssemblyPeephole());
  485   addPass(createWebAssemblyRegNumbering());
lib/Target/X86/X86TargetMachine.cpp
  407   addPass(createAtomicExpandPass());
  412     addPass(createInterleavedAccessPass());
  417   addPass(createIndirectBrExpandPass());
  423       addPass(createCFGuardDispatchPass());
  425       addPass(createCFGuardCheckPass());
  432   addPass(createX86ISelDag(getX86TargetMachine(), getOptLevel()));
  437     addPass(createCleanupLocalDynamicTLSPass());
  439   addPass(createX86GlobalBaseRegPass());
  444   addPass(new IRTranslator());
  449   addPass(new Legalizer());
  454   addPass(new RegBankSelect());
  459   addPass(new InstructionSelect());
  465     addPass(createX86CondBrFolding());
  469   addPass(createX86CmovConverterPass());
  477     addPass(createX86WinEHStatePass());
  484     addPass(createX86FixupSetCC());
  485     addPass(createX86OptimizeLEAs());
  486     addPass(createX86CallFrameOptimization());
  487     addPass(createX86AvoidStoreForwardingBlocks());
  490   addPass(createX86SpeculativeLoadHardeningPass());
  491   addPass(createX86FlagsCopyLoweringPass());
  492   addPass(createX86WinAllocaExpander());
  495   addPass(createX86DomainReassignmentPass());
  500   addPass(createX86FloatingPointStackifierPass());
  503 void X86PassConfig::addPreSched2() { addPass(createX86ExpandPseudoPass()); }
  507     addPass(new X86ExecutionDomainFix());
  508     addPass(createBreakFalseDeps());
  511   addPass(createX86IndirectBranchTrackingPass());
  514     addPass(createX86IssueVZeroUpperPass());
  517     addPass(createX86FixupBWInsts());
  518     addPass(createX86PadShortFunctions());
  519     addPass(createX86FixupLEAs());
  520     addPass(createX86EvexToVexInsts());
  522   addPass(createX86DiscriminateMemOpsPass());
  523   addPass(createX86InsertPrefetchPass());
  530   addPass(createX86RetpolineThunksPass());
  535     addPass(createX86AvoidTrailingCallPass());
  543     addPass(createCFIInstrInserter());
  546     addPass(createCFGuardLongjmpPass());
lib/Target/XCore/XCoreTargetMachine.cpp
   88   addPass(createAtomicExpandPass());
   94   addPass(createXCoreLowerThreadLocalPass());
   99   addPass(createXCoreISelDag(getXCoreTargetMachine(), getOptLevel()));
  104   addPass(createXCoreFrameToArgsOffsetEliminationPass(), false);