| /llvm-project-15.0.7/mlir/test/Dialect/Tosa/ |
| H A D | constant-op-fold.mlir | 13 // CHECK: "tosa.transpose" 21 // CHECK: "tosa.transpose" 33 %1 = "tosa.transpose"(%input, %perms) : (tensor<2x3xf32>, tensor<2xi32>) -> tensor<3x2xf32> 44 %1 = "tosa.transpose"(%input, %perms) : (tensor<2x3xf32>, tensor<2xi32>) -> tensor<3x2xf32> 70 // CHECK: tosa.transpose 71 %1 = "tosa.transpose"(%input, %perms) : (tensor<2x3xf32>, tensor<2xi32>) -> tensor<3x2xf32> 78 // CHECK: tosa.transpose 79 %1 = "tosa.transpose"(%input, %perms) : (tensor<2x3xf32>, tensor<2xi32>) -> tensor<3x2xf32> 87 // CHECK: tosa.transpose 88 %1 = "tosa.transpose"(%input, %perms) : (tensor<2x3xf32>, tensor<2xi32>) -> tensor<3x2xf32> [all …]
|
| /llvm-project-15.0.7/mlir/test/Integration/Dialect/Vector/CPU/ |
| H A D | test-transpose.mlir | 52 %tA = vector.transpose %A, [1, 0] : vector<2x2xf32> to vector<2x2xf32> 53 %tB = vector.transpose %B, [1, 0] : vector<2x2xf32> to vector<2x2xf32> 54 %tC = vector.transpose %C, [1, 0] : vector<3x2xf32> to vector<2x3xf32> 55 %tD = vector.transpose %D, [1, 0] : vector<2x4xf32> to vector<4x2xf32> 69 %idD = vector.transpose %D, [0, 1] : vector<2x4xf32> to vector<2x4xf32> 70 %ttD = vector.transpose %tD, [1, 0] : vector<4x2xf32> to vector<2x4xf32> 75 // back to original after transpose matrices: 96 %tP = vector.transpose %w, [0, 1, 2] : vector<2x2x2xf32> to vector<2x2x2xf32> 97 %tQ = vector.transpose %w, [0, 2, 1] : vector<2x2x2xf32> to vector<2x2x2xf32> 98 %tR = vector.transpose %w, [1, 0, 2] : vector<2x2x2xf32> to vector<2x2x2xf32> [all …]
|
| /llvm-project-15.0.7/mlir/docs/Tutorials/Toy/ |
| H A D | Ch-3.md | 28 transposes that cancel out: `transpose(transpose(X)) -> X`. Here is the 33 return transpose(transpose(x)); 41 %0 = toy.transpose(%arg0 : tensor<*xf64>) to tensor<*xf64> 42 %1 = toy.transpose(%0 : tensor<*xf64>) to tensor<*xf64> 50 transpose is expressed with these loops: 78 /// Fold transpose(transpose(x)) -> x 92 // Look through the input of the current transpose. 96 // Input defined by another transpose? If not, no match. 136 %0 = toy.transpose(%arg0 : tensor<*xf64>) to tensor<*xf64> 150 def TransposeOp : Toy_Op<"transpose", [NoSideEffect]> {...} [all …]
|
| H A D | Ch-1.md | 28 # transpose() and print() are the only builtin, the following will transpose 30 print(transpose(a) * transpose(b)); 44 return transpose(a) * transpose(b); 66 var f = multiply_transpose(transpose(a), c); 82 Call 'transpose' [ @test/Examples/Toy/Ch1/ast.toy:5:10 85 Call 'transpose' [ @test/Examples/Toy/Ch1/ast.toy:5:25 114 Call 'transpose' [ @test/Examples/Toy/Ch1/ast.toy:28:30
|
| /llvm-project-15.0.7/clang/test/CodeGenCXX/ |
| H A D | matrix-type-builtins.cpp | 14 MyMatrix<T, C, R> transpose(const MyMatrix<T, R, C> &M) { in transpose() function 29 MyMatrix<int, 10, 4> M1_t = transpose(M1); in test_transpose_template1() 52 MyMatrix<double, 6, 7> M2_t = transpose(transpose(transpose(M))); in test_transpose_template2()
|
| /llvm-project-15.0.7/mlir/test/Examples/Toy/Ch3/ |
| H A D | ast.toy | 5 return transpose(a) * transpose(b); 28 var f = multiply_transpose(transpose(a), c); 39 # CHECK-NEXT: Call 'transpose' [ @{{.*}}ast.toy:5:10 42 # CHECK-NEXT: Call 'transpose' [ @{{.*}}ast.toy:5:25 71 # CHECK-NEXT: Call 'transpose' [ @{{.*}}ast.toy:28:30
|
| H A D | codegen.toy | 5 return transpose(a) * transpose(b); 18 # CHECK: [[VAL_2:%.*]] = toy.transpose([[VAL_0]] : tensor<*xf64>) to tensor<*xf64> 19 # CHECK-NEXT: [[VAL_3:%.*]] = toy.transpose([[VAL_1]] : tensor<*xf64>) to tensor<*xf64>
|
| /llvm-project-15.0.7/mlir/test/Examples/Toy/Ch5/ |
| H A D | ast.toy | 5 return transpose(a) * transpose(b); 28 var f = multiply_transpose(transpose(a), c); 39 # CHECK-NEXT: Call 'transpose' [ @{{.*}}ast.toy:5:10 42 # CHECK-NEXT: Call 'transpose' [ @{{.*}}ast.toy:5:25 71 # CHECK-NEXT: Call 'transpose' [ @{{.*}}ast.toy:28:30
|
| H A D | codegen.toy | 5 return transpose(a) * transpose(b); 18 # CHECK: [[VAL_2:%.*]] = toy.transpose([[VAL_0]] : tensor<*xf64>) to tensor<*xf64> 19 # CHECK-NEXT: [[VAL_3:%.*]] = toy.transpose([[VAL_1]] : tensor<*xf64>) to tensor<*xf64>
|
| /llvm-project-15.0.7/mlir/test/Examples/Toy/Ch4/ |
| H A D | ast.toy | 5 return transpose(a) * transpose(b); 28 var f = multiply_transpose(transpose(a), c); 39 # CHECK-NEXT: Call 'transpose' [ @{{.*}}ast.toy:5:10 42 # CHECK-NEXT: Call 'transpose' [ @{{.*}}ast.toy:5:25 71 # CHECK-NEXT: Call 'transpose' [ @{{.*}}ast.toy:28:30
|
| H A D | codegen.toy | 5 return transpose(a) * transpose(b); 18 # CHECK: [[VAL_2:%.*]] = toy.transpose([[VAL_0]] : tensor<*xf64>) to tensor<*xf64> 19 # CHECK-NEXT: [[VAL_3:%.*]] = toy.transpose([[VAL_1]] : tensor<*xf64>) to tensor<*xf64>
|
| /llvm-project-15.0.7/mlir/test/Examples/Toy/Ch2/ |
| H A D | ast.toy | 5 return transpose(a) * transpose(b); 28 var f = multiply_transpose(transpose(a), c); 39 # CHECK-NEXT: Call 'transpose' [ @{{.*}}ast.toy:5:10 42 # CHECK-NEXT: Call 'transpose' [ @{{.*}}ast.toy:5:25 71 # CHECK-NEXT: Call 'transpose' [ @{{.*}}ast.toy:28:30
|
| H A D | codegen.toy | 5 return transpose(a) * transpose(b); 18 # CHECK: [[VAL_2:%.*]] = toy.transpose([[VAL_0]] : tensor<*xf64>) to tensor<*xf64> 19 # CHECK-NEXT: [[VAL_3:%.*]] = toy.transpose([[VAL_1]] : tensor<*xf64>) to tensor<*xf64>
|
| /llvm-project-15.0.7/mlir/test/Examples/Toy/Ch6/ |
| H A D | ast.toy | 5 return transpose(a) * transpose(b); 28 var f = multiply_transpose(transpose(a), c); 39 # CHECK-NEXT: Call 'transpose' [ @{{.*}}ast.toy:5:10 42 # CHECK-NEXT: Call 'transpose' [ @{{.*}}ast.toy:5:25 71 # CHECK-NEXT: Call 'transpose' [ @{{.*}}ast.toy:28:30
|
| H A D | codegen.toy | 5 return transpose(a) * transpose(b); 18 # CHECK: [[VAL_2:%.*]] = toy.transpose([[VAL_0]] : tensor<*xf64>) to tensor<*xf64> 19 # CHECK-NEXT: [[VAL_3:%.*]] = toy.transpose([[VAL_1]] : tensor<*xf64>) to tensor<*xf64>
|
| /llvm-project-15.0.7/mlir/test/Examples/Toy/Ch1/ |
| H A D | ast.toy | 5 return transpose(a) * transpose(b); 28 var f = multiply_transpose(transpose(a), c); 39 # CHECK-NEXT: Call 'transpose' [ @{{.*}}ast.toy:5:10 42 # CHECK-NEXT: Call 'transpose' [ @{{.*}}ast.toy:5:25 71 # CHECK-NEXT: Call 'transpose' [ @{{.*}}ast.toy:28:30
|
| /llvm-project-15.0.7/mlir/test/Examples/Toy/Ch7/ |
| H A D | ast.toy | 5 return transpose(a) * transpose(b); 28 var f = multiply_transpose(transpose(a), c); 39 # CHECK-NEXT: Call 'transpose' [ @{{.*}}ast.toy:5:10 42 # CHECK-NEXT: Call 'transpose' [ @{{.*}}ast.toy:5:25 71 # CHECK-NEXT: Call 'transpose' [ @{{.*}}ast.toy:28:30
|
| H A D | struct-codegen.toy | 12 return transpose(value.a) * transpose(value.b); 27 # CHECK-NEXT: [[VAL_2:%.*]] = toy.transpose([[VAL_1]] : tensor<*xf64>) to tensor<*xf64> 29 # CHECK-NEXT: [[VAL_4:%.*]] = toy.transpose([[VAL_3]] : tensor<*xf64>) to tensor<*xf64> 41 # OPT-NEXT: [[VAL_1:%.*]] = toy.transpose([[VAL_0]] : tensor<2x3xf64>) to tensor<3x2xf64>
|
| H A D | codegen.toy | 5 return transpose(a) * transpose(b); 18 # CHECK: [[VAL_2:%.*]] = toy.transpose([[VAL_0]] : tensor<*xf64>) to tensor<*xf64> 19 # CHECK-NEXT: [[VAL_3:%.*]] = toy.transpose([[VAL_1]] : tensor<*xf64>) to tensor<*xf64>
|
| /llvm-project-15.0.7/llvm/test/Verifier/ |
| H A D | matrix-intrinsics-opaque-ptrs.ll | 3 define <4 x float> @transpose(<4 x float> %m, i32 %arg) { 14 %result.0 = call <4 x float> @llvm.matrix.transpose.v4f32(<4 x float> %m, i32 0, i32 0) 15 %result.1 = call <4 x float> @llvm.matrix.transpose.v4f32(<4 x float> %result.0, i32 3, i32 2) 16 %result.2 = call <4 x float> @llvm.matrix.transpose.v4f32(<4 x float> %result.1, i32 2, i32 1) 17 %result.3 = call <4 x float> @llvm.matrix.transpose.v4f32(<4 x float> %result.2, i32 %arg, i32 2) 18 %result.4 = call <4 x float> @llvm.matrix.transpose.v4f32(<4 x float> %result.3, i32 2, i32 %arg) 65 ; CHECK-NEXT: ptr @llvm.matrix.transpose.v4f32.v4i32 67 ; CHECK-NEXT: ptr @llvm.matrix.transpose.v4i32.v4f32 130 declare <4 x i32> @llvm.matrix.transpose.v4i32.v4f32(<4 x float>, i32, i32) 131 declare <4 x float> @llvm.matrix.transpose.v4f32(<4 x float>, i32, i32) [all …]
|
| H A D | matrix-intrinsics.ll | 3 define <4 x float> @transpose(<4 x float> %m, i32 %arg) { 14 %result.0 = call <4 x float> @llvm.matrix.transpose.v4f32(<4 x float> %m, i32 0, i32 0) 15 %result.1 = call <4 x float> @llvm.matrix.transpose.v4f32(<4 x float> %result.0, i32 3, i32 2) 16 %result.2 = call <4 x float> @llvm.matrix.transpose.v4f32(<4 x float> %result.1, i32 2, i32 1) 17 %result.3 = call <4 x float> @llvm.matrix.transpose.v4f32(<4 x float> %result.2, i32 %arg, i32 2) 18 %result.4 = call <4 x float> @llvm.matrix.transpose.v4f32(<4 x float> %result.3, i32 2, i32 %arg) 65 ; CHECK-NEXT: <4 x float> (<4 x i32>, i32, i32)* @llvm.matrix.transpose.v4f32.v4i32 67 ; CHECK-NEXT: <4 x i32> (<4 x float>, i32, i32)* @llvm.matrix.transpose.v4i32.v4f32 154 declare <4 x i32> @llvm.matrix.transpose.v4i32.v4f32(<4 x float>, i32, i32) 155 declare <4 x float> @llvm.matrix.transpose.v4f32(<4 x float>, i32, i32) [all …]
|
| /llvm-project-15.0.7/mlir/test/Conversion/VectorToSCF/ |
| H A D | vector-to-scf-mask-and-permutation-map.mlir | 3 // Ensure that the permutation map is lowered (by inserting a transpose op) 10 // CHECK: %[[MASK_T:.*]] = vector.transpose %[[MASK]], [1, 0] : vector<9x4xi1> to vector<4x… 21 // CHECK: %[[RESULT_T:.*]] = vector.transpose %[[RESULT]], [1, 0] : vector<4x9xf32> to vect… 24 // Vector load with mask + transpose.
|
| /llvm-project-15.0.7/mlir/test/Dialect/Vector/ |
| H A D | vector-reduce-to-contract.mlir | 278 %b = vector.transpose %a, [1, 0]: vector<4x2xi8> to vector<2x4xi8> 292 // CHECK: %[[T:.+]] = vector.transpose %[[ADD]], [1, 0] 296 %at = vector.transpose %a, [1, 0]: vector<4x2xf32> to vector<2x4xf32> 297 %bt = vector.transpose %b, [1, 0]: vector<4x2xf32> to vector<2x4xf32> 310 %condt = vector.transpose %cond, [1, 0]: vector<4x2xi1> to vector<2x4xi1> 311 %at = vector.transpose %a, [1, 0]: vector<4x2xf32> to vector<2x4xf32> 312 %bt = vector.transpose %b, [1, 0]: vector<4x2xf32> to vector<2x4xf32> 325 %at = vector.transpose %a, [1, 0]: vector<4x2xf32> to vector<2x4xf32> 326 %bt = vector.transpose %b, [1, 0]: vector<4x2xf32> to vector<2x4xf32> 350 // CHECK: vector.transpose [all …]
|
| H A D | canonicalize.mlir | 228 // CHECK-NOT: transpose 239 // CHECK-NOT: transpose 250 // CHECK-NOT: transpose 261 // CHECK-NOT: transpose 287 // CHECK-NOT: transpose 349 // transpose [1, 0]. 353 // transpose [1, 0]. 421 // CHECK-NEXT: vector.transpose 423 // CHECK-NEXT: %[[F234:.*]] = vector.transpose 433 // CHECK-NEXT: vector.transpose [all …]
|
| /llvm-project-15.0.7/clang/test/SemaCXX/ |
| H A D | matrix-type-builtins.cpp | 11 typename MyMatrix<EltTy1, R1, C1>::matrix_t transpose(MyMatrix<EltTy0, R0, C0> &A) { in transpose() function 32 Mat1.value = transpose<unsigned, 2, 3, unsigned, 2, 3>(Mat1); in test_transpose_template() 35 Mat1.value = transpose<unsigned, 3, 3, unsigned, 2, 3>(Mat2); in test_transpose_template() 39 Mat3.value = transpose<unsigned, 3, 3, float, 3, 3>(Mat2); in test_transpose_template()
|