brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.8 KiB · 6584596 Raw
103 lines · plain
1// RUN: mlir-opt %s --split-input-file --verify-diagnostics2 3transform.sequence failures(propagate) {4^bb0(%arg0: !transform.any_op):5  // expected-error@below {{'transform.structured.interchange' op expects iterator_interchange to be a permutation, found 1, 1}}6  transform.structured.interchange %arg0 iterator_interchange = [1, 1] : (!transform.any_op) -> !transform.any_op7}8 9// -----10 11transform.sequence failures(propagate) {12^bb0(%arg0: !transform.any_op):13  // expected-error@below {{expects padding_dimensions to contain positive integers, found [1, -7]}}14  transform.structured.pad %arg0 {padding_dimensions=[1, -7]} : (!transform.any_op) -> (!transform.any_op, !transform.any_op, !transform.any_op)15}16 17// -----18 19transform.sequence failures(propagate) {20^bb0(%arg0: !transform.any_op):21  // expected-error@below {{expects nofold_flags to contain booleans (0/1), found [1, 7]}}22  transform.structured.pad %arg0 {nofold_flags=[1, 7]} : (!transform.any_op) -> (!transform.any_op, !transform.any_op, !transform.any_op)23}24 25// -----26 27transform.sequence failures(propagate) {28^bb0(%arg0: !transform.any_op):29  // expected-error@below {{expects transpose_paddings to be a permutation, found [1, 1]}}30  transform.structured.pad %arg0 {transpose_paddings=[[1, 1]]} : (!transform.any_op) -> (!transform.any_op, !transform.any_op, !transform.any_op)31}32 33// -----34 35transform.sequence failures(propagate) {36^bb0(%arg0: !transform.any_op):37  // expected-error@below {{'transform.structured.interchange' op attribute 'iterator_interchange' failed to satisfy constraint: i64 dense array attribute whose value is non-negative}}38  transform.structured.interchange %arg0 iterator_interchange = [-3, 1] : (!transform.any_op) -> !transform.any_op39}40 41// -----42 43transform.sequence failures(propagate) {44^bb0(%arg0: !transform.any_op):45  // expected-error@below {{expects all results type to be the same}}46  "transform.structured.multitile_sizes"(%arg0) { target_size = 3, divisor = 2, dimension = 0 }47      : (!transform.any_op) -> (!transform.param<i64>, !transform.param<i64>, !transform.param<i32>)48}49 50// -----51 52transform.sequence failures(propagate) {53^bb0(%arg0: !transform.any_op):54  // expected-error@below {{not a valid permutation}}55  transform.structured.pack_greedily %arg056      matmul_packed_sizes = [8, 0, 32]57      matmul_inner_dims_order = [1, 1, 0]58    : (!transform.any_op) -> !transform.op<"linalg.generic">59 60}61 62// -----63 64transform.sequence failures(propagate) {65^bb0(%arg0: !transform.any_op):66  // expected-error@below {{at most one of the packed_size and the padded_sizes_next_multiple_of can be nonzero}}67  transform.structured.pack_greedily %arg068      matmul_packed_sizes = [1, 1, 1]69      matmul_padded_sizes_next_multiple_of = [1, 1, 1]70      matmul_inner_dims_order = [0, 1, 2]71    : (!transform.any_op) -> !transform.op<"linalg.generic">72 73}74 75// -----76 77transform.sequence failures(propagate) {78^bb0(%arg0: !transform.any_op):79  %0 = transform.param.constant 2 : i64 -> !transform.param<i64>80  // expected-error@+1 {{custom op 'transform.structured.vectorize' number of operands and types do not match: got 1 operands and 2 types}}81  transform.structured.vectorize %arg0 vector_sizes [%0, 2] : !transform.any_op, !transform.param<i64>, !transform.param<i64>82 83}84 85// -----86 87transform.sequence failures(propagate) {88^bb0(%arg0: !transform.any_op):89  %0 = transform.param.constant 2 : i64 -> !transform.param<i64>90  // expected-error@below {{expected ']' in dynamic index list}}91  // expected-error@below {{custom op 'transform.structured.vectorize' expected SSA value or integer}}92  transform.structured.vectorize %arg0 vector_sizes [%0 : !transform.param<i64>, 2] : !transform.any_op, !transform.param<i64>93 94}95 96// -----97 98transform.sequence failures(propagate) {99^bb0(%arg0: !transform.any_op):100  // expected-error@below {{expected '('}}101  %res = transform.structured.generalize %arg0 : !transform.any_op -> !transform.any_op 102}103