MLIR
17.0.0git
|
#include "mlir/Pass/Pass.h"
#include "mlir/Transforms/LocationSnapshot.h"
#include "mlir/Transforms/ViewOpGraph.h"
#include "llvm/Support/Debug.h"
#include <limits>
#include "mlir/Transforms/Passes.h.inc"
Go to the source code of this file.
Namespaces | |
mlir | |
This header declares functions that assit transformations in the MemRef dialect. | |
Macros | |
#define | GEN_PASS_DECL_CANONICALIZER |
#define | GEN_PASS_DECL_CONTROLFLOWSINK |
#define | GEN_PASS_DECL_CSEPASS |
#define | GEN_PASS_DECL_INLINER |
#define | GEN_PASS_DECL_LOOPINVARIANTCODEMOTION |
#define | GEN_PASS_DECL_MEM2REG |
#define | GEN_PASS_DECL_PRINTIRPASS |
#define | GEN_PASS_DECL_PRINTOPSTATS |
#define | GEN_PASS_DECL_SROA |
#define | GEN_PASS_DECL_STRIPDEBUGINFO |
#define | GEN_PASS_DECL_SCCP |
#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. More... | |
Functions | |
std::unique_ptr< Pass > | mlir::createCanonicalizerPass () |
Creates an instance of the Canonicalizer pass, configured with default settings (which can be overridden by pass options on the command line). More... | |
std::unique_ptr< Pass > | mlir::createCanonicalizerPass (const GreedyRewriteConfig &config, ArrayRef< std::string > disabledPatterns=std::nullopt, ArrayRef< std::string > enabledPatterns=std::nullopt) |
Creates an instance of the Canonicalizer pass with the specified config. More... | |
std::unique_ptr< Pass > | mlir::createControlFlowSinkPass () |
Creates a pass to perform control-flow sinking. More... | |
std::unique_ptr< Pass > | mlir::createCSEPass () |
Creates a pass to perform common sub expression elimination. More... | |
std::unique_ptr< Pass > | mlir::createPrintIRPass (const PrintIRPassOptions &={}) |
Creates a pass to print IR on the debug stream. More... | |
std::unique_ptr< Pass > | mlir::createGenerateRuntimeVerificationPass () |
Creates a pass that generates IR to verify ops at runtime. More... | |
std::unique_ptr< Pass > | mlir::createLoopInvariantCodeMotionPass () |
Creates a loop invariant code motion pass that hoists loop invariant instructions out of the loop. More... | |
std::unique_ptr< Pass > | mlir::createStripDebugInfoPass () |
Creates a pass to strip debug information from a function. More... | |
std::unique_ptr< Pass > | mlir::createPrintOpStatsPass (raw_ostream &os=llvm::errs()) |
Creates a pass which prints the list of ops and the number of occurrences in the module. More... | |
std::unique_ptr< Pass > | mlir::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. More... | |
std::unique_ptr< Pass > | mlir::createInlinerPass () |
Creates a pass which inlines calls and callable operations as defined by the CallGraph. More... | |
std::unique_ptr< Pass > | mlir::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. More... | |
std::unique_ptr< Pass > | mlir::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. More... | |
std::unique_ptr< Pass > | mlir::createSCCPPass () |
Creates a pass which performs sparse conditional constant propagation over nested operations. More... | |
std::unique_ptr< Pass > | mlir::createSymbolDCEPass () |
Creates a pass which delete symbol operations that are unreachable. More... | |
std::unique_ptr< Pass > | mlir::createSymbolPrivatizePass (ArrayRef< std::string > excludeSymbols={}) |
Creates a pass which marks top-level symbol operations as private unless listed in excludeSymbols . More... | |
std::unique_ptr< Pass > | mlir::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. More... | |