[memprof] Move YAML traits to MemProf.h (NFC) (#118668)
[llvm-project.git] / mlir / test / mlir-pdll / Parser / include_td.pdll
blobf8d78dd339f23161c3e9738d95f45ce7812b3d66
1 // RUN: mlir-pdll %s -I %S -I %S/../../../include -dump-ods 2>&1 | FileCheck %s
3 #include "include/ops.td"
5 // CHECK:      Operation `test.all_empty` {
6 // CHECK-NEXT: }
8 // CHECK:      Operation `test.all_optional` {
9 // CHECK-NEXT:   Attributes { attr : Optional<I64Attr> }
10 // CHECK-NEXT:   Operands { operand : Optional<I64> }
11 // CHECK-NEXT:   Results { result : Optional<I64> }
12 // CHECK-NEXT: }
14 // CHECK:      Operation `test.all_single` {
15 // CHECK-NEXT:   Attributes { attr : I64Attr, nonNegativeAttr : I64Attr }
16 // CHECK-NEXT:   Operands { operand : I64 }
17 // CHECK-NEXT:   Results { result : I64 }
18 // CHECK-NEXT: }
20 // CHECK:      Operation `test.all_variadic` {
21 // CHECK-NEXT:   Operands { operands : Variadic<I64> }
22 // CHECK-NEXT:   Results { results : Variadic<I64> }
23 // CHECK-NEXT: }
25 // CHECK:      AttributeConstraint `I64Attr` {
26 // CHECK-NEXT:   Summary: 64-bit signless integer attribute
27 // CHECK-NEXT:   CppClass: ::mlir::IntegerAttr
28 // CHECK-NEXT: }
30 // CHECK:      TypeConstraint `I64` {
31 // CHECK-NEXT:   Summary: 64-bit signless integer
32 // CHECK-NEXT:   CppClass: ::mlir::IntegerType
33 // CHECK-NEXT: }
35 // CHECK: UserConstraintDecl {{.*}} Name<TestAttrInterface> ResultType<Tuple<>> Code<return ::mlir::success((::llvm::isa<TestAttrInterface>(self)));>
36 // CHECK:  `Inputs`
37 // CHECK:    `-VariableDecl {{.*}} Name<self> Type<Attr>
38 // CHECK:      `Constraints`
39 // CHECK:        `-AttrConstraintDecl
41 // CHECK: UserConstraintDecl {{.*}} Name<TestTypeInterface> ResultType<Tuple<>> Code<return ::mlir::success((::llvm::isa<TestTypeInterface>(self)));>
42 // CHECK:  `Inputs`
43 // CHECK:    `-VariableDecl {{.*}} Name<self> Type<Type>
44 // CHECK:      `Constraints`
45 // CHECK:        `-TypeConstraintDecl {{.*}}
47 // CHECK: UserConstraintDecl {{.*}} Name<TestOpInterface> ResultType<Tuple<>> Code<return ::mlir::success(llvm::isa<::TestOpInterface>(self));>
48 // CHECK:  `Inputs`
49 // CHECK:    `-VariableDecl {{.*}} Name<self> Type<Op>
50 // CHECK:      `Constraints`
51 // CHECK:        `-OpConstraintDecl
52 // CHECK:          `-OpNameDecl