[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:
@@ -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();
|
||||
|
||||
@@ -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 ®istry) const override {
|
||||
registry.insert<affine::AffineDialect, func::FuncDialect,
|
||||
|
||||
@@ -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();
|
||||
|
||||
@@ -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 ®istry) const override {
|
||||
registry.insert<affine::AffineDialect, func::FuncDialect,
|
||||
|
||||
@@ -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 ®istry) const override {
|
||||
registry.insert<LLVM::LLVMDialect, scf::SCFDialect>();
|
||||
|
||||
@@ -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();
|
||||
|
||||
@@ -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 ®istry) const override {
|
||||
registry.insert<affine::AffineDialect, func::FuncDialect,
|
||||
|
||||
@@ -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 ®istry) const override {
|
||||
registry.insert<LLVM::LLVMDialect, scf::SCFDialect>();
|
||||
|
||||
@@ -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();
|
||||
|
||||
Reference in New Issue
Block a user