11// RUN: mlir-opt %s -split-input-file -test-vector-linearize -verify-diagnostics | FileCheck %s
22
3- // CHECK-LABEL: linearize
3+ // CHECK-LABEL: elementwise_constant
44// CHECK-SAME: (%[[ORIG_ARG:.*]]: vector<2x2xf32>)
5- func.func @linearize (%arg0: vector <2 x2 xf32 >) -> vector <2 x2 xf32 > {
5+ func.func @elementwise_constant (%arg0: vector <2 x2 xf32 >) -> vector <2 x2 xf32 > {
66
77 // CHECK: %[[ARG:.*]] = vector.shape_cast %[[ORIG_ARG]] : vector<2x2xf32> to vector<4xf32>
88 // CHECK: %[[CST:.*]] = arith.constant dense<[1.000000e+00, 2.000000e+00, 3.000000e+00, 4.000000e+00]> : vector<4xf32>
@@ -21,8 +21,8 @@ func.func @linearize(%arg0: vector<2x2xf32>) -> vector<2x2xf32> {
2121
2222// -----
2323
24- // CHECK-LABEL: linearize_poison
25- func.func @linearize_poison () -> vector <2 x2 xf32 > {
24+ // CHECK-LABEL: poison
25+ func.func @poison () -> vector <2 x2 xf32 > {
2626
2727 // CHECK: %[[POISON:.*]] = ub.poison : vector<4xf32>
2828 // CHECK: %[[RES:.*]] = vector.shape_cast %[[POISON]] : vector<4xf32> to vector<2x2xf32>
@@ -406,8 +406,8 @@ func.func @bitcast(%arg0: vector<[4]x2xf32>) -> vector<[4]x4xf16> {
406406
407407// -----
408408
409- // CHECK-LABEL: linearize_across_for
410- func.func @linearize_across_for (%arg0 : vector <4 xi8 >) -> vector <4 xi8 > {
409+ // CHECK-LABEL: across_for
410+ func.func @across_for (%arg0 : vector <4 xi8 >) -> vector <4 xi8 > {
411411 %0 = vector.shape_cast %arg0 : vector <4 xi8 > to vector <2 x2 xi8 >
412412 %c0 = arith.constant 0 : index
413413 %c1 = arith.constant 1 : index
@@ -428,9 +428,9 @@ func.func @linearize_across_for(%arg0 : vector<4xi8>) -> vector<4xi8> {
428428
429429// -----
430430
431- // CHECK-LABEL: linearize_broadcast_scalar_source
431+ // CHECK-LABEL: broadcast_scalar_source
432432// CHECK-SAME: (%[[ARG:.*]]: i32) -> vector<4x2xi32>
433- func.func @linearize_broadcast_scalar_source (%arg0: i32 ) -> vector <4 x2 xi32 > {
433+ func.func @broadcast_scalar_source (%arg0: i32 ) -> vector <4 x2 xi32 > {
434434
435435 // CHECK: %[[BROADCAST:.*]] = vector.broadcast %[[ARG]] : i32 to vector<8xi32>
436436 // CHECK: %[[CAST:.*]] = vector.shape_cast %[[BROADCAST]] : vector<8xi32> to vector<4x2xi32>
@@ -441,9 +441,9 @@ func.func @linearize_broadcast_scalar_source(%arg0: i32) -> vector<4x2xi32> {
441441
442442// -----
443443
444- // CHECK-LABEL: linearize_broadcast_rank_two_source
444+ // CHECK-LABEL: broadcast_rank_two_source
445445// CHECK-SAME: (%[[ARG:.*]]: vector<1x1xi32>) -> vector<4x2xi32>
446- func.func @linearize_broadcast_rank_two_source (%arg0: vector <1 x1 xi32 >) -> vector <4 x2 xi32 > {
446+ func.func @broadcast_rank_two_source (%arg0: vector <1 x1 xi32 >) -> vector <4 x2 xi32 > {
447447
448448 // CHECK: %[[CAST0:.*]] = vector.shape_cast %[[ARG]] : vector<1x1xi32> to vector<1xi32>
449449 // CHECK: %[[BROADCAST:.*]] = vector.broadcast %[[CAST0]] : vector<1xi32> to vector<8xi32>
@@ -455,9 +455,9 @@ func.func @linearize_broadcast_rank_two_source(%arg0: vector<1x1xi32>) -> vector
455455
456456// -----
457457
458- // CHECK-LABEL: linearize_scalable_broadcast
458+ // CHECK-LABEL: scalable_broadcast
459459// CHECK-SAME: (%[[ARG:.*]]: i32) -> vector<4x[2]xi32>
460- func.func @linearize_scalable_broadcast (%arg0: i32 ) -> vector <4 x[2 ]xi32 > {
460+ func.func @scalable_broadcast (%arg0: i32 ) -> vector <4 x[2 ]xi32 > {
461461
462462 // CHECK: %[[BROADCAST:.*]] = vector.broadcast %[[ARG]] : i32 to vector<[8]xi32>
463463 // CHECK: %[[CAST:.*]] = vector.shape_cast %[[BROADCAST]] : vector<[8]xi32> to vector<4x[2]xi32>
@@ -469,9 +469,9 @@ func.func @linearize_scalable_broadcast(%arg0: i32) -> vector<4x[2]xi32> {
469469
470470// -----
471471
472- // CHECK-LABEL: linearize_create_mask
472+ // CHECK-LABEL: create_mask
473473// CHECK-SAME: (%[[ARG0:.*]]: index, %[[ARG1:.*]]: index) -> vector<1x16xi1>
474- func.func @linearize_create_mask (%arg0 : index , %arg1 : index ) -> vector <1 x16 xi1 > {
474+ func.func @create_mask (%arg0 : index , %arg1 : index ) -> vector <1 x16 xi1 > {
475475
476476 // CHECK: %[[C0:.*]] = arith.constant 0 : index
477477 // CHECK: %[[CMP:.*]] = arith.cmpi sgt, %[[ARG0]], %[[C0]] : index
@@ -485,17 +485,17 @@ func.func @linearize_create_mask(%arg0 : index, %arg1 : index) -> vector<1x16xi1
485485}
486486
487487// -----
488- // CHECK-LABEL: linearize_scalable_create_mask
489- func.func @linearize_scalable_create_mask (%arg0 : index , %arg1 : index ) -> vector <1 x[16 ]xi1 > {
488+ // CHECK-LABEL: scalable_create_mask
489+ func.func @scalable_create_mask (%arg0 : index , %arg1 : index ) -> vector <1 x[16 ]xi1 > {
490490
491491 // CHECK: %[[MASK_1D:.*]] = vector.create_mask {{%.*}} : vector<[16]xi1>
492492 %0 = vector.create_mask %arg0 , %arg1 : vector <1 x[16 ]xi1 >
493493 return %0 : vector <1 x[16 ]xi1 >
494494}
495495
496- // CHECK-LABEL: linearize_load
496+ // CHECK-LABEL: load
497497// CHECK-SAME: (%[[ARG0:.*]]: memref<2x8xf32>) -> vector<1x4xf32>
498- func.func @linearize_load (%arg0: memref <2 x8 xf32 >) -> vector <1 x4 xf32 > {
498+ func.func @load (%arg0: memref <2 x8 xf32 >) -> vector <1 x4 xf32 > {
499499 // CHECK: %[[CST0:.*]] = arith.constant 0 : index
500500 // CHECK: %[[LOAD:.*]] = vector.load %[[ARG0]][%[[CST0]], %[[CST0]]] : memref<2x8xf32>, vector<4xf32>
501501 // CHECK: %[[CAST:.*]] = vector.shape_cast %[[LOAD]] : vector<4xf32> to vector<1x4xf32>
@@ -505,9 +505,9 @@ func.func @linearize_load(%arg0: memref<2x8xf32>) -> vector<1x4xf32> {
505505 return %0 : vector <1 x4 xf32 >
506506}
507507
508- // CHECK-LABEL: linearize_store
508+ // CHECK-LABEL: store
509509// CHECK-SAME: (%[[ARG0:.*]]: memref<2x8xf32>, %[[ARG1:.*]]: vector<1x4xf32>)
510- func.func @linearize_store (%arg0: memref <2 x8 xf32 >, %arg1: vector <1 x4 xf32 >) {
510+ func.func @store (%arg0: memref <2 x8 xf32 >, %arg1: vector <1 x4 xf32 >) {
511511 // CHECK: %[[CAST:.*]] = vector.shape_cast %arg1 : vector<1x4xf32> to vector<4xf32>
512512 // CHECK: %[[CST0:.*]] = arith.constant 0 : index
513513 // CHECK: vector.store %[[CAST]], %[[ARG0]][%[[CST0]], %[[CST0]]] : memref<2x8xf32>, vector<4xf32>
@@ -516,9 +516,9 @@ func.func @linearize_store(%arg0: memref<2x8xf32>, %arg1: vector<1x4xf32>) {
516516 return
517517}
518518
519- // CHECK-LABEL: linearize_load_scalable
519+ // CHECK-LABEL: load_scalable
520520// CHECK-SAME: (%[[ARG0:.*]]: memref<2x8xf32>) -> vector<1x[4]xf32>
521- func.func @linearize_load_scalable (%arg0: memref <2 x8 xf32 >) -> vector <1 x[4 ]xf32 > {
521+ func.func @load_scalable (%arg0: memref <2 x8 xf32 >) -> vector <1 x[4 ]xf32 > {
522522 // CHECK: %[[CST0:.*]] = arith.constant 0 : index
523523 // CHECK: %[[LOAD:.*]] = vector.load %[[ARG0]][%[[CST0]], %[[CST0]]] : memref<2x8xf32>, vector<[4]xf32>
524524 // CHECK: %[[CAST:.*]] = vector.shape_cast %[[LOAD]] : vector<[4]xf32> to vector<1x[4]xf32>
@@ -528,9 +528,9 @@ func.func @linearize_load_scalable(%arg0: memref<2x8xf32>) -> vector<1x[4]xf32>
528528 return %0 : vector <1 x[4 ]xf32 >
529529}
530530
531- // CHECK-LABEL: linearize_store_scalable
531+ // CHECK-LABEL: store_scalable
532532// CHECK-SAME: (%[[ARG0:.*]]: memref<2x8xf32>, %[[ARG1:.*]]: vector<1x[4]xf32>)
533- func.func @linearize_store_scalable (%arg0: memref <2 x8 xf32 >, %arg1: vector <1 x[4 ]xf32 >) {
533+ func.func @store_scalable (%arg0: memref <2 x8 xf32 >, %arg1: vector <1 x[4 ]xf32 >) {
534534 // CHECK: %[[CAST:.*]] = vector.shape_cast %arg1 : vector<1x[4]xf32> to vector<[4]xf32>
535535 // CHECK: %[[CST0:.*]] = arith.constant 0 : index
536536 // CHECK: vector.store %[[CAST]], %[[ARG0]][%[[CST0]], %[[CST0]]] : memref<2x8xf32>, vector<[4]xf32>
0 commit comments