brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.3 KiB · 5118320 Raw
103 lines · plain
1// RUN: mlir-opt %s | mlir-opt | FileCheck %s2 3// CHECK: irdl.dialect @testvar {4irdl.dialect @testvar {5 6  // CHECK-LABEL: irdl.operation @single_operand {7  // CHECK-NEXT:    %[[v0:[^ ]*]] = irdl.is i328  // CHECK-NEXT:    irdl.operands(foo: %[[v0]])9  // CHECK-NEXT:  }10  irdl.operation @single_operand {11    %0 = irdl.is i3212    irdl.operands(foo: single %0)13  }14 15  // CHECK-LABEL: irdl.operation @var_operand {16  // CHECK-NEXT:    %[[v0:[^ ]*]] = irdl.is i16 17  // CHECK-NEXT:    %[[v1:[^ ]*]] = irdl.is i32 18  // CHECK-NEXT:    %[[v2:[^ ]*]] = irdl.is i64 19  // CHECK-NEXT:    irdl.operands(foo: %[[v0]], bar: variadic %[[v1]], baz: %[[v2]])20  // CHECK-NEXT:  }21  irdl.operation @var_operand {22    %0 = irdl.is i1623    %1 = irdl.is i3224    %2 = irdl.is i6425    irdl.operands(foo: %0, bar: variadic %1, baz: %2)26  }27 28  // CHECK-LABEL: irdl.operation @opt_operand {29  // CHECK-NEXT:    %[[v0:[^ ]*]] = irdl.is i16 30  // CHECK-NEXT:    %[[v1:[^ ]*]] = irdl.is i32 31  // CHECK-NEXT:    %[[v2:[^ ]*]] = irdl.is i64 32  // CHECK-NEXT:    irdl.operands(foo: %[[v0]], bar: optional %[[v1]], baz: %[[v2]])33  // CHECK-NEXT:  }34  irdl.operation @opt_operand {35    %0 = irdl.is i1636    %1 = irdl.is i3237    %2 = irdl.is i6438    irdl.operands(foo: %0, bar: optional %1, baz: %2)39  }40 41  // CHECK-LABEL: irdl.operation @var_and_opt_operand {42  // CHECK-NEXT:    %[[v0:[^ ]*]] = irdl.is i16 43  // CHECK-NEXT:    %[[v1:[^ ]*]] = irdl.is i32 44  // CHECK-NEXT:    %[[v2:[^ ]*]] = irdl.is i64 45  // CHECK-NEXT:    irdl.operands(foo: variadic %[[v0]], bar: optional %[[v1]], baz: %[[v2]])46  // CHECK-NEXT:  }47  irdl.operation @var_and_opt_operand {48    %0 = irdl.is i1649    %1 = irdl.is i3250    %2 = irdl.is i6451    irdl.operands(foo: variadic %0, bar: optional %1, baz: %2)52  }53 54 55  // CHECK-LABEL: irdl.operation @single_result {56  // CHECK-NEXT:    %[[v0:[^ ]*]] = irdl.is i3257  // CHECK-NEXT:    irdl.results(foo: %[[v0]])58  // CHECK-NEXT:  }59  irdl.operation @single_result {60    %0 = irdl.is i3261    irdl.results(foo: single %0)62  }63 64  // CHECK-LABEL: irdl.operation @var_result {65  // CHECK-NEXT:    %[[v0:[^ ]*]] = irdl.is i16 66  // CHECK-NEXT:    %[[v1:[^ ]*]] = irdl.is i32 67  // CHECK-NEXT:    %[[v2:[^ ]*]] = irdl.is i64 68  // CHECK-NEXT:    irdl.results(foo: %[[v0]], bar: variadic %[[v1]], baz: %[[v2]])69  // CHECK-NEXT:  }70  irdl.operation @var_result {71    %0 = irdl.is i1672    %1 = irdl.is i3273    %2 = irdl.is i6474    irdl.results(foo: %0, bar: variadic %1, baz: %2)75  }76 77  // CHECK-LABEL: irdl.operation @opt_result {78  // CHECK-NEXT:    %[[v0:[^ ]*]] = irdl.is i16 79  // CHECK-NEXT:    %[[v1:[^ ]*]] = irdl.is i32 80  // CHECK-NEXT:    %[[v2:[^ ]*]] = irdl.is i64 81  // CHECK-NEXT:    irdl.results(foo: %[[v0]], bar: optional %[[v1]], baz: %[[v2]])82  // CHECK-NEXT:  }83  irdl.operation @opt_result {84    %0 = irdl.is i1685    %1 = irdl.is i3286    %2 = irdl.is i6487    irdl.results(foo: %0, bar: optional %1, baz: %2)88  }89 90  // CHECK-LABEL: irdl.operation @var_and_opt_result {91  // CHECK-NEXT:    %[[v0:[^ ]*]] = irdl.is i16 92  // CHECK-NEXT:    %[[v1:[^ ]*]] = irdl.is i32 93  // CHECK-NEXT:    %[[v2:[^ ]*]] = irdl.is i64 94  // CHECK-NEXT:    irdl.results(foo: variadic %[[v0]], bar: optional %[[v1]], baz: %[[v2]])95  // CHECK-NEXT:  }96  irdl.operation @var_and_opt_result {97    %0 = irdl.is i1698    %1 = irdl.is i3299    %2 = irdl.is i64100    irdl.results(foo: variadic %0, bar: optional %1, baz: %2)101  }102}103