45 lines · plain
1// RUN: mlir-opt %s -pass-pipeline='builtin.module(builtin.module(test-dynamic-pipeline{op-name=inner_mod1, dynamic-pipeline=func.func(cse,canonicalize)}))' --mlir-disable-threading -mlir-print-ir-before-all 2>&1 | FileCheck %s --check-prefix=MOD1 --check-prefix=MOD1-ONLY --check-prefix=CHECK2// RUN: mlir-opt %s -pass-pipeline='builtin.module(builtin.module(test-dynamic-pipeline{op-name=inner_mod2, dynamic-pipeline=func.func(cse,canonicalize)}))' --mlir-disable-threading -mlir-print-ir-before-all 2>&1 | FileCheck %s --check-prefix=MOD2 --check-prefix=MOD2-ONLY --check-prefix=CHECK3// RUN: mlir-opt %s -pass-pipeline='builtin.module(builtin.module(test-dynamic-pipeline{op-name=inner_mod1,inner_mod2, dynamic-pipeline=func.func(cse,canonicalize)}))' --mlir-disable-threading -mlir-print-ir-before-all 2>&1 | FileCheck %s --check-prefix=MOD1 --check-prefix=MOD2 --check-prefix=CHECK4// RUN: mlir-opt %s -pass-pipeline='builtin.module(builtin.module(test-dynamic-pipeline{dynamic-pipeline=func.func(cse,canonicalize)}))' --mlir-disable-threading -mlir-print-ir-before-all 2>&1 | FileCheck %s --check-prefix=MOD1 --check-prefix=MOD2 --check-prefix=CHECK5 6 7func.func @f() {8 return9}10 11// CHECK: IR Dump Before12// CHECK-SAME: TestDynamicPipelinePass13// CHECK-NEXT: module @inner_mod114// MOD2-ONLY: dynamic-pipeline skip op name: inner_mod115module @inner_mod1 {16// MOD1: Dump Before CSE17// MOD1-NEXT: @foo18// MOD1: Dump Before Canonicalizer19// MOD1-NEXT: @foo20 func.func @foo() {21 return22 }23// MOD1: Dump Before CSE24// MOD1-NEXT: @baz25// MOD1: Dump Before Canonicalizer26// MOD1-NEXT: @baz27 func.func @baz() {28 return29 }30}31 32// CHECK: IR Dump Before33// CHECK-SAME: TestDynamicPipelinePass34// CHECK-NEXT: module @inner_mod235// MOD1-ONLY: dynamic-pipeline skip op name: inner_mod236module @inner_mod2 {37// MOD2: Dump Before CSE38// MOD2-NEXT: @foo39// MOD2: Dump Before Canonicalizer40// MOD2-NEXT: @foo41 func.func @foo() {42 return43 }44}45