xref: /llvm-project/mlir/test/Examples/transform-opt/pass.mlir (revision 619ee20b3911f9a481a75a64704c80aef16af9d0)
1*619ee20bSOleksandr "Alex" Zinenko// RUN: mlir-transform-opt %s | FileCheck %s
2*619ee20bSOleksandr "Alex" Zinenko
3*619ee20bSOleksandr "Alex" Zinenkomodule attributes {transform.with_named_sequence} {
4*619ee20bSOleksandr "Alex" Zinenko  // CHECK-LABEL: @return_42
5*619ee20bSOleksandr "Alex" Zinenko  // CHECK: %[[C42:.+]] = arith.constant 42
6*619ee20bSOleksandr "Alex" Zinenko  // CHECK: return %[[C42]]
7*619ee20bSOleksandr "Alex" Zinenko  func.func @return_42() -> i32 {
8*619ee20bSOleksandr "Alex" Zinenko    %0 = arith.constant 21 : i32
9*619ee20bSOleksandr "Alex" Zinenko    %1 = arith.constant 2 : i32
10*619ee20bSOleksandr "Alex" Zinenko    %2 = arith.muli %0, %1 : i32
11*619ee20bSOleksandr "Alex" Zinenko    return %2 : i32
12*619ee20bSOleksandr "Alex" Zinenko  }
13*619ee20bSOleksandr "Alex" Zinenko
14*619ee20bSOleksandr "Alex" Zinenko  transform.named_sequence @__transform_main(%arg0: !transform.any_op) {
15*619ee20bSOleksandr "Alex" Zinenko    %arg1 = transform.apply_registered_pass "canonicalize" to %arg0 : (!transform.any_op) -> !transform.any_op
16*619ee20bSOleksandr "Alex" Zinenko    transform.print %arg1 : !transform.any_op
17*619ee20bSOleksandr "Alex" Zinenko    transform.yield
18*619ee20bSOleksandr "Alex" Zinenko  }
19*619ee20bSOleksandr "Alex" Zinenko}
20