xref: /llvm-project/mlir/test/Dialect/IRDL/test-type.irdl.mlir (revision 69d3ba3db922fca8cfc47b5f115b6bea6a737aab)
1// RUN: mlir-opt %s | mlir-opt | FileCheck %s
2
3module {
4  // CHECK-LABEL: irdl.dialect @testd {
5  irdl.dialect @testd {
6    // CHECK: irdl.type @singleton
7    irdl.type @singleton
8
9    // CHECK: irdl.type @parametrized {
10    // CHECK:   %[[v0:[^ ]*]] = irdl.any
11    // CHECK:   %[[v1:[^ ]*]] = irdl.is i32
12    // CHECK:   %[[v2:[^ ]*]] = irdl.is i64
13    // CHECK:   %[[v3:[^ ]*]] = irdl.any_of(%[[v1]], %[[v2]])
14    // CHECK:   irdl.parameters(foo: %[[v0]], bar: %[[v3]])
15    // CHECK: }
16    irdl.type @parametrized {
17      %0 = irdl.any
18      %1 = irdl.is i32
19      %2 = irdl.is i64
20      %3 = irdl.any_of(%1, %2)
21      irdl.parameters(foo: %0, bar: %3)
22    }
23
24    // CHECK: irdl.operation @any {
25    // CHECK:   %[[v0:[^ ]*]] = irdl.any
26    // CHECK:   irdl.results(foo: %[[v0]])
27    // CHECK: }
28    irdl.operation @any {
29      %0 = irdl.any
30      irdl.results(foo: %0)
31    }
32  }
33}
34