[MLIR] Define getArgument() for Toy tutorial passes

This is important during debugging to be able to dump a pass pipeline.
It is also what is used by `--mlir-print-ir-tree-dir` to compute filenames
during dumps.
This commit is contained in:
Mehdi Amini
2025-01-28 16:50:10 +01:00
parent d459784cbe
commit 75622e3f8d
9 changed files with 9 additions and 0 deletions

View File

@@ -55,6 +55,7 @@ namespace {
struct ShapeInferencePass
: public mlir::PassWrapper<ShapeInferencePass, OperationPass<toy::FuncOp>> {
MLIR_DEFINE_EXPLICIT_INTERNAL_INLINE_TYPE_ID(ShapeInferencePass)
StringRef getArgument() const override { return "toy-shape-inference"; }
void runOnOperation() override {
auto f = getOperation();

View File

@@ -328,6 +328,7 @@ namespace {
struct ToyToAffineLoweringPass
: public PassWrapper<ToyToAffineLoweringPass, OperationPass<ModuleOp>> {
MLIR_DEFINE_EXPLICIT_INTERNAL_INLINE_TYPE_ID(ToyToAffineLoweringPass)
StringRef getArgument() const override { return "toy-to-affine"; }
void getDependentDialects(DialectRegistry &registry) const override {
registry.insert<affine::AffineDialect, func::FuncDialect,

View File

@@ -55,6 +55,7 @@ namespace {
struct ShapeInferencePass
: public mlir::PassWrapper<ShapeInferencePass, OperationPass<toy::FuncOp>> {
MLIR_DEFINE_EXPLICIT_INTERNAL_INLINE_TYPE_ID(ShapeInferencePass)
StringRef getArgument() const override { return "toy-shape-inference"; }
void runOnOperation() override {
auto f = getOperation();

View File

@@ -328,6 +328,7 @@ namespace {
struct ToyToAffineLoweringPass
: public PassWrapper<ToyToAffineLoweringPass, OperationPass<ModuleOp>> {
MLIR_DEFINE_EXPLICIT_INTERNAL_INLINE_TYPE_ID(ToyToAffineLoweringPass)
StringRef getArgument() const override { return "toy-to-affine"; }
void getDependentDialects(DialectRegistry &registry) const override {
registry.insert<affine::AffineDialect, func::FuncDialect,

View File

@@ -184,6 +184,7 @@ namespace {
struct ToyToLLVMLoweringPass
: public PassWrapper<ToyToLLVMLoweringPass, OperationPass<ModuleOp>> {
MLIR_DEFINE_EXPLICIT_INTERNAL_INLINE_TYPE_ID(ToyToLLVMLoweringPass)
StringRef getArgument() const override { return "toy-to-llvm"; }
void getDependentDialects(DialectRegistry &registry) const override {
registry.insert<LLVM::LLVMDialect, scf::SCFDialect>();

View File

@@ -55,6 +55,7 @@ namespace {
struct ShapeInferencePass
: public mlir::PassWrapper<ShapeInferencePass, OperationPass<toy::FuncOp>> {
MLIR_DEFINE_EXPLICIT_INTERNAL_INLINE_TYPE_ID(ShapeInferencePass)
StringRef getArgument() const override { return "toy-shape-inference"; }
void runOnOperation() override {
auto f = getOperation();

View File

@@ -328,6 +328,7 @@ namespace {
struct ToyToAffineLoweringPass
: public PassWrapper<ToyToAffineLoweringPass, OperationPass<ModuleOp>> {
MLIR_DEFINE_EXPLICIT_INTERNAL_INLINE_TYPE_ID(ToyToAffineLoweringPass)
StringRef getArgument() const override { return "toy-to-affine"; }
void getDependentDialects(DialectRegistry &registry) const override {
registry.insert<affine::AffineDialect, func::FuncDialect,

View File

@@ -184,6 +184,7 @@ namespace {
struct ToyToLLVMLoweringPass
: public PassWrapper<ToyToLLVMLoweringPass, OperationPass<ModuleOp>> {
MLIR_DEFINE_EXPLICIT_INTERNAL_INLINE_TYPE_ID(ToyToLLVMLoweringPass)
StringRef getArgument() const override { return "toy-to-llvm"; }
void getDependentDialects(DialectRegistry &registry) const override {
registry.insert<LLVM::LLVMDialect, scf::SCFDialect>();

View File

@@ -55,6 +55,7 @@ namespace {
struct ShapeInferencePass
: public mlir::PassWrapper<ShapeInferencePass, OperationPass<toy::FuncOp>> {
MLIR_DEFINE_EXPLICIT_INTERNAL_INLINE_TYPE_ID(ShapeInferencePass)
StringRef getArgument() const override { return "toy-shape-inference"; }
void runOnOperation() override {
auto f = getOperation();