MLIR 22.0.0git
Passes.h File Reference
#include "mlir/Pass/Pass.h"
#include "mlir/Pass/PassManager.h"
#include "mlir/Transforms/GreedyPatternRewriteDriver.h"
#include "mlir/Transforms/LocationSnapshot.h"
#include "mlir/Transforms/ViewOpGraph.h"
#include "llvm/Support/Debug.h"
#include <limits>
#include <memory>
#include "mlir/Transforms/Passes.h.inc"

Go to the source code of this file.

Classes

struct  mlir::CanonicalizerOptions
struct  mlir::CompositeFixedPointPassOptions
struct  mlir::GenerateRuntimeVerificationOptions
struct  mlir::InlinerOptions
struct  mlir::LocationSnapshotOptions
struct  mlir::Mem2RegOptions
struct  mlir::PrintIRPassOptions
struct  mlir::PrintOpStatsOptions
struct  mlir::SymbolPrivatizeOptions
struct  mlir::ViewOpGraphOptions

Namespaces

namespace  mlir
 Include the generated interface declarations.

Macros

#define GEN_PASS_DECL_BUBBLEDOWNMEMORYSPACECASTS
#define GEN_PASS_DECL_CSE
#define GEN_PASS_DECL_CANONICALIZER
#define GEN_PASS_DECL_COMPOSITEFIXEDPOINTPASS
#define GEN_PASS_DECL_CONTROLFLOWSINK
#define GEN_PASS_DECL_GENERATERUNTIMEVERIFICATION
#define GEN_PASS_DECL_LOOPINVARIANTCODEMOTION
#define GEN_PASS_DECL_INLINER
#define GEN_PASS_DECL_MEM2REG
#define GEN_PASS_DECL_PRINTIRPASS
#define GEN_PASS_DECL_PRINTOPSTATS
#define GEN_PASS_DECL_SCCP
#define GEN_PASS_DECL_SROA
#define GEN_PASS_DECL_STRIPDEBUGINFO
#define GEN_PASS_DECL_SYMBOLDCE
#define GEN_PASS_DECL_SYMBOLPRIVATIZE
#define GEN_PASS_DECL_TOPOLOGICALSORT
#define GEN_PASS_REGISTRATION
 Generate the code for registering passes.
#define GEN_PASS_REGISTRATION_BUBBLEDOWNMEMORYSPACECASTS
#define GEN_PASS_REGISTRATION_CSE
#define GEN_PASS_REGISTRATION_CANONICALIZER
#define GEN_PASS_REGISTRATION_COMPOSITEFIXEDPOINTPASS
#define GEN_PASS_REGISTRATION_CONTROLFLOWSINK
#define GEN_PASS_REGISTRATION_GENERATERUNTIMEVERIFICATION
#define GEN_PASS_REGISTRATION_INLINER
#define GEN_PASS_REGISTRATION_LOCATIONSNAPSHOT
#define GEN_PASS_REGISTRATION_LOOPINVARIANTCODEMOTION
#define GEN_PASS_REGISTRATION_LOOPINVARIANTSUBSETHOISTING
#define GEN_PASS_REGISTRATION_MEM2REG
#define GEN_PASS_REGISTRATION_PRINTIRPASS
#define GEN_PASS_REGISTRATION_PRINTOPSTATS
#define GEN_PASS_REGISTRATION_REMOVEDEADVALUES
#define GEN_PASS_REGISTRATION_SCCP
#define GEN_PASS_REGISTRATION_SROA
#define GEN_PASS_REGISTRATION_STRIPDEBUGINFO
#define GEN_PASS_REGISTRATION_SYMBOLDCE
#define GEN_PASS_REGISTRATION_SYMBOLPRIVATIZE
#define GEN_PASS_REGISTRATION_TOPOLOGICALSORT
#define GEN_PASS_REGISTRATION_VIEWOPGRAPH

Functions

std::unique_ptr<::mlir::Passmlir::createBubbleDownMemorySpaceCasts ()
std::unique_ptr<::mlir::Passmlir::createCompositeFixedPointPass ()
std::unique_ptr<::mlir::Passmlir::createCompositeFixedPointPass (CompositeFixedPointPassOptions options)
std::unique_ptr<::mlir::Passmlir::createLocationSnapshot ()
std::unique_ptr<::mlir::Passmlir::createLocationSnapshot (LocationSnapshotOptions options)
std::unique_ptr<::mlir::Passmlir::createMem2Reg ()
std::unique_ptr<::mlir::Passmlir::createMem2Reg (Mem2RegOptions options)
std::unique_ptr<::mlir::Passmlir::createSROA ()
std::unique_ptr< Passmlir::createCanonicalizerPass ()
 Creates an instance of the Canonicalizer pass, configured with default settings (which can be overridden by pass options on the command line).
std::unique_ptr< Passmlir::createCanonicalizerPass (const GreedyRewriteConfig &config, ArrayRef< std::string > disabledPatterns={}, ArrayRef< std::string > enabledPatterns={})
 Creates an instance of the Canonicalizer pass with the specified config.
std::unique_ptr< Passmlir::createControlFlowSinkPass ()
 Creates a pass to perform control-flow sinking.
std::unique_ptr< Passmlir::createCSEPass ()
 Creates a pass to perform common sub expression elimination.
std::unique_ptr< Passmlir::createPrintIRPass (const PrintIRPassOptions &={})
 Creates a pass to print IR on the debug stream.
std::unique_ptr< Passmlir::createGenerateRuntimeVerificationPass ()
 Creates a pass that generates IR to verify ops at runtime.
std::unique_ptr< Passmlir::createLoopInvariantCodeMotionPass ()
 Creates a loop invariant code motion pass that hoists loop invariant instructions out of the loop.
std::unique_ptr< Passmlir::createLoopInvariantSubsetHoistingPass ()
 Creates a pass that hoists loop-invariant subset ops.
std::unique_ptr< Passmlir::createStripDebugInfoPass ()
 Creates a pass to strip debug information from a function.
std::unique_ptr< Passmlir::createPrintOpStatsPass (raw_ostream &os=llvm::errs())
 Creates a pass which prints the list of ops and the number of occurrences in the module.
std::unique_ptr< Passmlir::createPrintOpStatsPass (raw_ostream &os, bool printAsJSON)
 Creates a pass which prints the list of ops and the number of occurrences in the module with the output format option.
std::unique_ptr< Passmlir::createInlinerPass ()
 Creates a pass which inlines calls and callable operations as defined by the CallGraph.
std::unique_ptr< Passmlir::createInlinerPass (llvm::StringMap< OpPassManager > opPipelines)
 Creates an instance of the inliner pass, and use the provided pass managers when optimizing callable operations with names matching the key type.
std::unique_ptr< Passmlir::createInlinerPass (llvm::StringMap< OpPassManager > opPipelines, std::function< void(OpPassManager &)> defaultPipelineBuilder)
 Creates an instance of the inliner pass, and use the provided pass managers when optimizing callable operations with names matching the key type.
std::unique_ptr< Passmlir::createRemoveDeadValuesPass ()
 Creates an optimization pass to remove dead values.
std::unique_ptr< Passmlir::createSCCPPass ()
 Creates a pass which performs sparse conditional constant propagation over nested operations.
std::unique_ptr< Passmlir::createSymbolDCEPass ()
 Creates a pass which delete symbol operations that are unreachable.
std::unique_ptr< Passmlir::createSymbolPrivatizePass (ArrayRef< std::string > excludeSymbols={})
 Creates a pass which marks top-level symbol operations as private unless listed in excludeSymbols.
std::unique_ptr< Passmlir::createTopologicalSortPass ()
 Creates a pass that recursively sorts nested regions without SSA dominance topologically such that, as much as possible, users of values appear after their producers.
std::unique_ptr< Passmlir::createCompositeFixedPointPass (std::string name, llvm::function_ref< void(OpPassManager &)> populateFunc, int maxIterations=10)
 Create composite pass, which runs provided set of passes until fixed point or maximum number of iterations reached.
void mlir::registerBubbleDownMemorySpaceCasts ()
void mlir::registerBubbleDownMemorySpaceCastsPass ()
void mlir::registerCSE ()
void mlir::registerCSEPass ()
void mlir::registerCanonicalizer ()
void mlir::registerCanonicalizerPass ()
void mlir::registerCompositeFixedPointPass ()
void mlir::registerCompositeFixedPointPassPass ()
void mlir::registerControlFlowSink ()
void mlir::registerControlFlowSinkPass ()
void mlir::registerGenerateRuntimeVerification ()
void mlir::registerGenerateRuntimeVerificationPass ()
void mlir::registerInliner ()
void mlir::registerInlinerPass ()
void mlir::registerLocationSnapshot ()
void mlir::registerLocationSnapshotPass ()
void mlir::registerLoopInvariantCodeMotion ()
void mlir::registerLoopInvariantCodeMotionPass ()
void mlir::registerLoopInvariantSubsetHoisting ()
void mlir::registerLoopInvariantSubsetHoistingPass ()
void mlir::registerMem2Reg ()
void mlir::registerMem2RegPass ()
void mlir::registerPrintIRPass ()
void mlir::registerPrintIRPassPass ()
void mlir::registerPrintOpStats ()
void mlir::registerPrintOpStatsPass ()
void mlir::registerRemoveDeadValues ()
void mlir::registerRemoveDeadValuesPass ()
void mlir::registerSCCP ()
void mlir::registerSCCPPass ()
void mlir::registerSROA ()
void mlir::registerSROAPass ()
void mlir::registerStripDebugInfo ()
void mlir::registerStripDebugInfoPass ()
void mlir::registerSymbolDCE ()
void mlir::registerSymbolDCEPass ()
void mlir::registerSymbolPrivatize ()
void mlir::registerSymbolPrivatizePass ()
void mlir::registerTopologicalSort ()
void mlir::registerTopologicalSortPass ()
void mlir::registerViewOpGraph ()
void mlir::registerViewOpGraphPass ()
void mlir::registerTransformsPasses ()

Macro Definition Documentation

◆ GEN_PASS_DECL_BUBBLEDOWNMEMORYSPACECASTS

#define GEN_PASS_DECL_BUBBLEDOWNMEMORYSPACECASTS

Definition at line 34 of file Passes.h.

◆ GEN_PASS_DECL_CANONICALIZER

#define GEN_PASS_DECL_CANONICALIZER

Definition at line 36 of file Passes.h.

◆ GEN_PASS_DECL_COMPOSITEFIXEDPOINTPASS

#define GEN_PASS_DECL_COMPOSITEFIXEDPOINTPASS

Definition at line 37 of file Passes.h.

◆ GEN_PASS_DECL_CONTROLFLOWSINK

#define GEN_PASS_DECL_CONTROLFLOWSINK

Definition at line 38 of file Passes.h.

◆ GEN_PASS_DECL_CSE

#define GEN_PASS_DECL_CSE

Definition at line 35 of file Passes.h.

◆ GEN_PASS_DECL_GENERATERUNTIMEVERIFICATION

#define GEN_PASS_DECL_GENERATERUNTIMEVERIFICATION

Definition at line 39 of file Passes.h.

◆ GEN_PASS_DECL_INLINER

#define GEN_PASS_DECL_INLINER

Definition at line 41 of file Passes.h.

◆ GEN_PASS_DECL_LOOPINVARIANTCODEMOTION

#define GEN_PASS_DECL_LOOPINVARIANTCODEMOTION

Definition at line 40 of file Passes.h.

◆ GEN_PASS_DECL_MEM2REG

#define GEN_PASS_DECL_MEM2REG

Definition at line 42 of file Passes.h.

◆ GEN_PASS_DECL_PRINTIRPASS

#define GEN_PASS_DECL_PRINTIRPASS

Definition at line 43 of file Passes.h.

◆ GEN_PASS_DECL_PRINTOPSTATS

#define GEN_PASS_DECL_PRINTOPSTATS

Definition at line 44 of file Passes.h.

◆ GEN_PASS_DECL_SCCP

#define GEN_PASS_DECL_SCCP

Definition at line 45 of file Passes.h.

◆ GEN_PASS_DECL_SROA

#define GEN_PASS_DECL_SROA

Definition at line 46 of file Passes.h.

◆ GEN_PASS_DECL_STRIPDEBUGINFO

#define GEN_PASS_DECL_STRIPDEBUGINFO

Definition at line 47 of file Passes.h.

◆ GEN_PASS_DECL_SYMBOLDCE

#define GEN_PASS_DECL_SYMBOLDCE

Definition at line 48 of file Passes.h.

◆ GEN_PASS_DECL_SYMBOLPRIVATIZE

#define GEN_PASS_DECL_SYMBOLPRIVATIZE

Definition at line 49 of file Passes.h.

◆ GEN_PASS_DECL_TOPOLOGICALSORT

#define GEN_PASS_DECL_TOPOLOGICALSORT

Definition at line 50 of file Passes.h.

◆ GEN_PASS_REGISTRATION

#define GEN_PASS_REGISTRATION

Generate the code for registering passes.

Definition at line 149 of file Passes.h.

◆ GEN_PASS_REGISTRATION_BUBBLEDOWNMEMORYSPACECASTS

#define GEN_PASS_REGISTRATION_BUBBLEDOWNMEMORYSPACECASTS

Definition at line 1583 of file Passes.h.

◆ GEN_PASS_REGISTRATION_CANONICALIZER

#define GEN_PASS_REGISTRATION_CANONICALIZER

Definition at line 1585 of file Passes.h.

◆ GEN_PASS_REGISTRATION_COMPOSITEFIXEDPOINTPASS

#define GEN_PASS_REGISTRATION_COMPOSITEFIXEDPOINTPASS

Definition at line 1586 of file Passes.h.

◆ GEN_PASS_REGISTRATION_CONTROLFLOWSINK

#define GEN_PASS_REGISTRATION_CONTROLFLOWSINK

Definition at line 1587 of file Passes.h.

◆ GEN_PASS_REGISTRATION_CSE

#define GEN_PASS_REGISTRATION_CSE

Definition at line 1584 of file Passes.h.

◆ GEN_PASS_REGISTRATION_GENERATERUNTIMEVERIFICATION

#define GEN_PASS_REGISTRATION_GENERATERUNTIMEVERIFICATION

Definition at line 1588 of file Passes.h.

◆ GEN_PASS_REGISTRATION_INLINER

#define GEN_PASS_REGISTRATION_INLINER

Definition at line 1589 of file Passes.h.

◆ GEN_PASS_REGISTRATION_LOCATIONSNAPSHOT

#define GEN_PASS_REGISTRATION_LOCATIONSNAPSHOT

Definition at line 1590 of file Passes.h.

◆ GEN_PASS_REGISTRATION_LOOPINVARIANTCODEMOTION

#define GEN_PASS_REGISTRATION_LOOPINVARIANTCODEMOTION

Definition at line 1591 of file Passes.h.

◆ GEN_PASS_REGISTRATION_LOOPINVARIANTSUBSETHOISTING

#define GEN_PASS_REGISTRATION_LOOPINVARIANTSUBSETHOISTING

Definition at line 1592 of file Passes.h.

◆ GEN_PASS_REGISTRATION_MEM2REG

#define GEN_PASS_REGISTRATION_MEM2REG

Definition at line 1593 of file Passes.h.

◆ GEN_PASS_REGISTRATION_PRINTIRPASS

#define GEN_PASS_REGISTRATION_PRINTIRPASS

Definition at line 1594 of file Passes.h.

◆ GEN_PASS_REGISTRATION_PRINTOPSTATS

#define GEN_PASS_REGISTRATION_PRINTOPSTATS

Definition at line 1595 of file Passes.h.

◆ GEN_PASS_REGISTRATION_REMOVEDEADVALUES

#define GEN_PASS_REGISTRATION_REMOVEDEADVALUES

Definition at line 1596 of file Passes.h.

◆ GEN_PASS_REGISTRATION_SCCP

#define GEN_PASS_REGISTRATION_SCCP

Definition at line 1597 of file Passes.h.

◆ GEN_PASS_REGISTRATION_SROA

#define GEN_PASS_REGISTRATION_SROA

Definition at line 1598 of file Passes.h.

◆ GEN_PASS_REGISTRATION_STRIPDEBUGINFO

#define GEN_PASS_REGISTRATION_STRIPDEBUGINFO

Definition at line 1599 of file Passes.h.

◆ GEN_PASS_REGISTRATION_SYMBOLDCE

#define GEN_PASS_REGISTRATION_SYMBOLDCE

Definition at line 1600 of file Passes.h.

◆ GEN_PASS_REGISTRATION_SYMBOLPRIVATIZE

#define GEN_PASS_REGISTRATION_SYMBOLPRIVATIZE

Definition at line 1601 of file Passes.h.

◆ GEN_PASS_REGISTRATION_TOPOLOGICALSORT

#define GEN_PASS_REGISTRATION_TOPOLOGICALSORT

Definition at line 1602 of file Passes.h.

◆ GEN_PASS_REGISTRATION_VIEWOPGRAPH

#define GEN_PASS_REGISTRATION_VIEWOPGRAPH

Definition at line 1603 of file Passes.h.