/llvm-project/llvm/test/CodeGen/AArch64/ |
H A D | arm64-opt-remarks-lazy-bfi.ll | 1 ; RUN: llc < %s -mtriple=arm64-apple-ios7.0 -pass-remarks-analysis=asm-printer \ 4 ; RUN: -pass-remarks-with-hotness=1 -asm-verbose=0 \ 6 ; RUN: -debug-pass=Executions 2>&1 | FileCheck %s -check-prefix=HOTNESS 8 ; RUN: llc < %s -mtriple=arm64-apple-ios7.0 -pass-remarks-analysis=asm-printer \ 11 ; RUN: -pass-remarks-with-hotness=0 -asm-verbose=0 \ 13 ; RUN: -debug-pass=Executions 2>&1 | FileCheck %s -check-prefix=NO_HOTNESS 19 ; MBFI, e.g. GreedyRegAlloc. (This hard-codes the previous pass to the 22 ; HOTNESS: Executing Pass 'Spill Code Placement Analysis' 23 ; HOTNESS-NEXT: Executing Pass 'Lazy Machine Block Frequency Analysis' 24 ; HOTNESS-NEXT: Executing Pass 'Machine Optimization Remark Emitter' [all …]
|
/llvm-project/llvm/test/Other/ |
H A D | new-pm-thinlto-postlink-samplepgo-defaults.ll | 3 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 7 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 11 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager -passes-ep-pipeline-start='no-op-module' \ 15 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 19 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 23 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager -debug-info-for-profiling \ 31 ; CHECK-EP-PIPELINE-START: Running pass: NoOpModulePass 32 ; CHECK-O: Running pass: SampleProfileLoaderPass 37 ; CHECK-O-NEXT: Running pass: RequireAnalysisPass<{{.*}}ProfileSummaryAnalysis 38 ; CHECK-O-NEXT: Running pass [all...] |
H A D | new-pm-thinlto-postlink-defaults.ll | 2 ; 1) To have a loop, so we create a loop pass manager 3 ; 2) To be "immutable" in the sense that no pass in the standard 11 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 14 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 17 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager -passes-ep-pipeline-start='no-op-module' \ 20 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager -passes-ep-optimizer-early='no-op-module' \ 23 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager -passes-ep-optimizer-last='no-op-module' \ 26 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 29 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 32 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass [all...] |
H A D | opt-bisect-new-pass-manager.ll | 13 ; RUN: | FileCheck %s --check-prefix=CHECK-MODULE-PASS 14 ; CHECK-MODULE-PASS: BISECT: running pass (1) InferFunctionAttrsPass on [module] 18 ; RUN: | FileCheck %s --check-prefix=CHECK-LIMIT-MODULE-PASS 19 ; CHECK-LIMIT-MODULE-PASS: BISECT: NOT running pass (1) InferFunctionAttrsPass on [module] 21 ; RUN: opt -disable-output -debug-pass-manager \ 23 ; RUN: | FileCheck %s --check-prefix=CHECK-REQUIRED-PASS 24 ; CHECK-REQUIRED-PASS: BISECT: running pass ( [all...] |
H A D | new-pm-defaults.ll | 2 ; 1) To have a loop, so we create a loop pass manager 3 ; 2) To be "immutable" in the sense that no pass in the standard 10 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 13 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 16 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 19 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 22 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 25 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 29 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 33 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass [all...] |
H A D | new-pm-thinlto-postlink-pgo-defaults.ll | 4 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 7 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 10 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager -passes-ep-pipeline-start='no-op-module' \ 13 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 16 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 19 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager -debug-info-for-profiling \ 26 ; CHECK-EP-PIPELINE-START: Running pass: NoOpModulePass 27 ; CHECK-O: Running pass: PGOIndirectCallPromotion 31 ; CHECK-O-NEXT: Running pass: OpenMPOptPass 32 ; CHECK-O-NEXT: Running pass [all...] |
H A D | new-pm-thinlto-prelink-samplepgo-defaults.ll | 3 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 7 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 11 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 15 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 19 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 23 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager -debug-info-for-profiling \ 28 ; CHECK-O: Running pass: Annotation2Metadata 29 ; CHECK-O-NEXT: Running pass: ForceFunctionAttrsPass 31 ; CHECK-O-NEXT: Running pass: AddDiscriminatorsPass 32 ; CHECK-EP-PIPELINE-START-NEXT: Running pass [all...] |
H A D | new-pm-thinlto-prelink-pgo-defaults.ll | 5 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 9 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 13 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 17 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 21 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 25 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager -debug-info-for-profiling \ 30 ; CHECK-O: Running pass: Annotation2Metadata 31 ; CHECK-O-NEXT: Running pass: ForceFunctionAttrsPass 32 ; CHECK-EP-PIPELINE-START-NEXT: Running pass: NoOpModulePass 33 ; CHECK-O-NEXT: Running pass [all...] |
H A D | new-pm-lto-defaults.ll | 3 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 6 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 10 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 13 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 17 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 20 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 23 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 26 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 29 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 32 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass [all...] |
H A D | new-pm-thinlto-prelink-defaults.ll | 2 ; 1) To have a loop, so we create a loop pass manager 3 ; 2) To be "immutable" in the sense that no pass in the standard 11 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 14 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 17 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 20 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 23 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 26 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 29 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass-manager \ 32 ; RUN: opt -disable-verify -verify-analysis-invalidation=0 -eagerly-invalidate-analyses=0 -debug-pass [all...] |
H A D | pass-pipeline-parsing.ll | 1 ; RUN: opt -disable-output -debug-pass-manager \ 4 ; CHECK-TWO-NOOP-MP: Running pass: NoOpModulePass 5 ; CHECK-TWO-NOOP-MP: Running pass: NoOpModulePass 7 ; RUN: opt -disable-output -debug-pass-manager \ 10 ; CHECK-NESTED-TWO-NOOP-MP: Running pass: NoOpModulePass 11 ; CHECK-NESTED-TWO-NOOP-MP: Running pass: NoOpModulePass 13 ; RUN: opt -disable-output -debug-pass-manager \ 16 ; CHECK-TWO-NOOP-FP: Running pass: NoOpFunctionPass 17 ; CHECK-TWO-NOOP-FP: Running pass: NoOpFunctionPass 19 ; RUN: opt -disable-output -debug-pass [all...] |
H A D | new-pass-manager.ll | 2 ; new pass manager pipeline. It will be used to flesh out the feature 3 ; completeness of the opt tool when the new pass manager is engaged. The tests 8 ; RUN: opt -disable-output -disable-verify -verify-analysis-invalidation=0 -debug-pass-manager \ 10 ; RUN: | FileCheck %s --check-prefix=CHECK-MODULE-PASS 11 ; RUN: opt -disable-output -disable-verify -verify-analysis-invalidation=0 -debug-pass-manager \ 13 ; RUN: | FileCheck %s --check-prefix=CHECK-MODULE-PASS 14 ; CHECK-MODULE-PASS: Running pass: NoOpModulePass 16 ; RUN: opt -disable-output -disable-verify -verify-analysis-invalidation=0 -debug-pass-manager \ 18 ; RUN: | FileCheck %s --check-prefix=CHECK-CGSCC-PASS 19 ; RUN: opt -disable-output -disable-verify -verify-analysis-invalidation=0 -debug-pass-manager \ [all …]
|
/llvm-project/llvm/include/llvm/CodeGen/ |
H A D | Passes.h | 30 class Pass; variable 41 // List of target independent CodeGen pass IDs. 44 /// AtomicExpandPass - At IR level this pass replace atomic instructions with 52 /// not instruction select unreachable blocks, or run this pass as its 53 /// last LLVM modifying pass to clean up blocks that are not reachable from 61 /// This pass garbage-collects such basic blocks. 64 /// createBasicBlockSections Pass - This pass assigns sections to machine 70 /// createMachineFunctionSplitterPass - This pass splits machine functions 74 /// createStaticDataSplitterPass - This pass partition [all...] |
/llvm-project/llvm/include/llvm/IR/ |
H A D | LegacyPassManagers.h | 1 //===- LegacyPassManagers.h - Legacy Pass Infrastructure --------*- C++ -*-===// 9 // This file declares the LLVM Pass Manager infrastructure. 20 #include "llvm/Pass.h" 25 // The Pass Manager Infrastructure manages passes. It's responsibilities are: 27 // o Manage optimization pass execution order 28 // o Make required Analysis information available before pass P is run 30 // o If Analysis information is dirtied by a pass then regenerate Analysis 31 // information before it is consumed by another pass. 33 // Pass Manager Infrastructure uses multiple pass managers. They are 35 // This class hierarchy uses multiple inheritance but pass managers do not [all …]
|
/llvm-project/mlir/tools/mlir-tblgen/ |
H A D | PassGen.cpp | 1 //===- Pass.cpp - MLIR pass registration generator ------------------------===// 15 #include "mlir/TableGen/Pass.h" 27 static llvm::cl::OptionCategory passGenCat("Options for -gen-pass-decls"); 33 static std::vector<Pass> getPasses(const RecordKeeper &records) { in getPasses() 34 std::vector<Pass> passes; in getPasses() 49 // GEN: Pass registration generation 52 /// The code snippet used to generate a pass registration. 54 /// {0}: The def name of the pass record. 55 /// {1}: The pass constructo 86 emitPassOptionsStruct(const Pass & pass,raw_ostream & os) emitPassOptionsStruct() argument 113 getPassDeclVarName(const Pass & pass) getPassDeclVarName() argument 118 emitPassDecls(const Pass & pass,raw_ostream & os) emitPassDecls() argument 145 for (const Pass &pass : passes) { emitRegistrations() local 159 for (const Pass &pass : passes) emitRegistrations() local 268 emitPassOptionDecls(const Pass & pass,raw_ostream & os) emitPassOptionDecls() argument 285 emitPassStatisticDecls(const Pass & pass,raw_ostream & os) emitPassStatisticDecls() argument 294 emitPassDefs(const Pass & pass,raw_ostream & os) emitPassDefs() argument 368 emitPass(const Pass & pass,raw_ostream & os) emitPass() argument 431 emitOldPassDecl(const Pass & pass,raw_ostream & os) emitOldPassDecl() argument 460 for (const Pass &pass : passes) emitPasses() local 465 for (const Pass &pass : passes) emitPasses() local 474 for (const Pass &pass : passes) emitPasses() local [all...] |
/llvm-project/mlir/docs/ |
H A D | PassManagement.md | 1 # Pass Infrastructure 6 This document provides an overview of the pass infrastructure in MLIR and how to 16 ## Operation Pass 19 [operation](LangRef.md/#operations). As such, the pass manager is designed to 21 paragraphs, we refer to the operation that a pass operates on as the "current 24 The structure of the [pass manager](#pass-manager), and the concept of nesting, 40 * Must not maintain mutable pass state across invocations of `runOnOperation`. 41 A pass may be run on many different operations with no guarantee of 43 * When multithreading, a specific pass instanc 53 Op-Agnostic Operation PassesPass Infrastructure""Operation Pass global() argument 82 Filtered Operation PassPass Infrastructure""Operation Pass global() argument 89 Operation Pass: Static Schedule FilteringPass Infrastructure""Operation Pass global() argument 184 Dependent DialectsPass Infrastructure""Operation Pass global() argument 195 InitializationPass Infrastructure""Operation Pass global() argument [all...] |
/llvm-project/mlir/include/mlir/Pass/ |
H A D | Pass.h | 1 //===- Pass.h - Base classes for compiler passes ----------------*- C++ -*-===// 13 #include "mlir/Pass/AnalysisManager.h" 14 #include "mlir/Pass/PassRegistry.h" 24 /// The state for a single execution of a pass. This provides a unified 25 /// interface for accessing and initializing necessary state for pass execution. 33 /// The current operation being transformed and a bool for if the pass 49 /// The abstract base pass class. This class contains information describing the 50 /// derived pass object, e.g its kind and abstract TypeID. 51 class Pass { 53 virtual ~Pass() = default; [all …]
|
H A D | PassManager.h | 1 //===- PassManager.h - Pass Management Interface ----------------*- C++ -*-===// 27 class Pass; variable 42 /// This class represents a pass manager that runs passes on either a specific 43 /// operation type, or any isolated operation. This pass manager can not be run 46 /// a pass by using the `Pass::runPipeline` API. 49 /// This enum represents the nesting behavior of the pass manager. 52 /// operations different from this pass manager, in which case a new pass 53 /// manager is implicitly nested for the operation type of the new pass. 56 /// pass manager support its operation type. 60 /// Construct a new op-agnostic ("any") pass manager with the given operation [all …]
|
/llvm-project/mlir/test/Pass/ |
H A D | pipeline-options-parsing.mlir | 1 // RUN: not mlir-opt %s -pass-pipeline='builtin.module(builtin.module(test-module-pass{))' 2>&1 | FileCheck --check-prefix=CHECK_ERROR_1 %s 2 // RUN: not mlir-opt %s -pass-pipeline='builtin.module(builtin.module(test-module-pass{test-option=3}))' 2>&1 | FileCheck --check-prefix=CHECK_ERROR_2 %s 3 // RUN: not mlir-opt %s -pass-pipeline='builtin.module(builtin.module(func.func(test-options-pass{list=3}), test-module-pass{invalid-option=3}))' 2>&1 | FileCheck --check-prefix=CHECK_ERROR_3 %s 4 // RUN: not mlir-opt %s -pass-pipeline='builtin.module(test-options-pass{list=3 list=notaninteger})' 2>&1 | FileCheck --check-prefix=CHECK_ERROR_4 %s 5 // RUN: not mlir-opt %s -pass [all...] |
/llvm-project/llvm/include/llvm/ |
H A D | PassAnalysisSupport.h | 1 //===- llvm/PassAnalysisSupport.h - Analysis Pass Support code --*- C++ -*-===// 10 // This file is automatically #included by Pass.h, so: 14 // Instead, #include Pass.h 19 #error "Do not include <PassAnalysisSupport.h>; include <Pass.h> instead" 35 class Pass; variable 40 /// Represent the analysis usage information of a pass. This tracks analyses 41 /// that the pass REQUIRES (must be available when the pass runs), REQUIRES 42 /// TRANSITIVE (must be available throughout the lifetime of the pass), and 43 /// analyses that the pass PRESERVES (the pass does not invalidate the results 44 /// of these analyses). This information is provided by a pass to the Pass [all …]
|
/llvm-project/llvm/lib/IR/ |
H A D | LegacyPassManager.cpp | 1 //===- LegacyPassManager.cpp - LLVM Pass Infrastructure Implementation ----===// 9 // This file implements the legacy LLVM Pass Manager infrastructure. 35 // See PassManagers.h for Pass Manager infrastructure overview. 38 // Pass debugging information. Often it is useful to find out what pass is 40 // debugging on, a command line option (--debug-pass) is enabled that causes the 41 // pass name to be printed before it executes. 52 "debug-pass", cl::Hidden, 55 clEnumVal(Arguments, "print pass arguments to pass t [all...] |
/llvm-project/mlir/lib/Pass/ |
H A D | Pass.cpp | 1 //===- Pass.cpp - Pass infrastructure implementation ----------------------===// 9 // This file implements common pass infrastructure. 13 #include "mlir/Pass/Pass.h" 40 const Pass &pass) in PassExecutionAction() argument 41 : Base(irUnits), pass(pass) {} in PassExecutionAction() 45 pass in print() 122 for (const std::unique_ptr<Pass> &pass : rhs.passes) { OpPassManagerImpl() local 203 for (auto &pass : passes) mergeInto() local 214 addPass(std::unique_ptr<Pass> pass) addPass() argument 243 for (auto &pass : passes) { finalizePassList() local 310 __anon245c90590402(const std::unique_ptr<Pass> &pass) canScheduleOn() argument 364 addPass(std::unique_ptr<Pass> pass) addPass() argument 398 __anon245c90590502(mlir::Pass &pass) printAsTextualPipeline() argument 418 for (const Pass &pass : pm.getPasses()) registerDialectsForPipeline() local 473 run(Pass * pass,Operation * op,AnalysisManager am,bool verifyPasses,unsigned parentInitGeneration) run() argument 1028 runBeforePass(Pass * pass,Operation * op) runBeforePass() argument 1035 runAfterPass(Pass * pass,Operation * op) runAfterPass() argument 1042 runAfterPassFailed(Pass * pass,Operation * op) runAfterPassFailed() argument [all...] |
/llvm-project/llvm/test/Feature/ |
H A D | optnone-opt.ll | 1 ; RUN: opt -passes='default<O0>' -S -debug-pass-manager %s 2>&1 | FileCheck %s --check-prefix=%llvm… 2 ; RUN: opt -passes='default<O1>' -S -debug-pass-manager %s 2>&1 | FileCheck %s --check-prefix=NPM-O1 3 ; RUN: opt -passes='default<O2>' -S -debug-pass-manager %s 2>&1 | FileCheck %s --check-prefix=NPM-O… 4 ; RUN: opt -passes='default<O3>' -S -debug-pass-manager %s 2>&1 | FileCheck %s --check-prefix=NPM-O… 5 ; RUN: opt -passes='dce,gvn-hoist,lower-atomic' -S -debug-pass-manager %s 2>&1 | FileCheck %s --che… 6 …oop-instsimplify,loop-reduce,simple-loop-unswitch),loop-unroll' -S -debug-pass-manager %s 2>&1 | F… 7 ; RUN: opt -passes='instsimplify,verify' -S -debug-pass-manager %s 2>&1 | FileCheck %s --check-pref… 36 ; CHECK-EXT-NPM-O0: Skipping pass {{.*}}Bye 37 ; CHECK-NOEXT-NPM-O0-NOT: Skipping pass 40 ; NPM-O1-DAG: Skipping pass: SimplifyCFGPass on foo [all …]
|
/llvm-project/mlir/include/mlir/Transforms/ |
H A D | Passes.h | 1 //===- Passes.h - Pass Entrypoints ------------------------------*- C++ -*-===// 9 // This header file defines prototypes that expose pass constructors in the loop 17 #include "mlir/Pass/Pass.h" 18 #include "mlir/Pass/PassManager.h" 51 /// Creates an instance of the Canonicalizer pass, configured with default 52 /// settings (which can be overridden by pass options on the command line). 53 std::unique_ptr<Pass> createCanonicalizerPass(); 55 /// Creates an instance of the Canonicalizer pass with the specified config. 63 std::unique_ptr<Pass> [all...] |
/llvm-project/llvm/docs/ |
H A D | WritingAnLLVMNewPMPass.rst | 2 Writing an LLVM Pass 10 Introduction --- What is a pass? 14 This document deals with the new pass manager. LLVM uses the legacy pass 18 The LLVM pass framework is an important part of the LLVM system, because LLVM 24 Unlike passes under the legacy pass manager where the pass interface is 25 defined via inheritance, passes under the new pass manager rely on 28 the CRTP mix-in ``PassInfoMixin<PassT>``. The pass should have a ``run()`` 30 along with an analysis manager. For example, a function pass would have a 33 We start by showing you how to construct a pass, from setting up the build, 34 creating the pass, to executing and testing it. Looking at existing passes is [all …]
|