@@ -30,6 +30,8 @@ llvm.func @triton_gen.2Dblockstore(%ptr : !llvm.ptr<1>, %base_width : i32, %base
30
30
31
31
// -----
32
32
33
+ // CHECK: llvm.func spir_funccc @_Z33__spirv_Subgroup2DBlockStoreINTELiiiiPvPU3AS1viiiDv2_i(i32, i32, i32, i32, !llvm.ptr {llvm.nonnull, llvm.readonly}, !llvm.ptr<1> {llvm.nonnull, llvm.writeonly}, i32, i32, i32, vector<2xi32>) attributes {no_unwind, will_return}
34
+
33
35
module attributes {" ttg.threads-per-warp" = 16 : i32 } {
34
36
llvm.func @triton_gen.2Dblockstore (%ptr : !llvm.ptr <1 >, %base_width : i32 , %base_height : i32 , %base_pitch : i32 , %x : i32 , %y : i32 , %stored_val : vector <8 xi8 >) {
35
37
// CHECK: llvm.func @triton_gen.2Dblockstore(%arg0: !llvm.ptr<1>, %arg1: i32, %arg2: i32, %arg3: i32, %arg4: i32, %arg5: i32, %arg6: vector<8xi8>) {
@@ -65,20 +67,6 @@ llvm.func @triton_gen.2Dblockstore(%ptr : !llvm.ptr<1>, %base_width : i32, %base
65
67
}
66
68
// -----
67
69
68
- llvm.func @triton_gen.2Dblockstore (%ptr : !llvm.ptr <1 >, %base_width : i32 , %base_height : i32 , %base_pitch : i32 , %x : i32 , %y : i32 , %stored_val : vector <8 xi16 >) {
69
- // CHECK: [[ELEM_BITS:%.*]] = llvm.mlir.constant(8 : i32) : i32
70
- // CHECK: [[TILE_WIDTH:%.*]] = llvm.mlir.constant(32 : i32) : i32
71
- // CHECK: [[TILE_HEIGHT:%.*]] = llvm.mlir.constant(1 : i32) : i32
72
- // CHECK: [[VBLOCKS:%.*]] = llvm.mlir.constant(1 : i32) : i32
73
- // CHECK: [[TRANSPOSE:%.*]] = llvm.mlir.constant(false) : i1
74
- // CHECK: [[VNNI:%.*]] = llvm.mlir.constant(false) : i1
75
- // CHECK: llvm.call spir_funccc @llvm.genx.GenISA.LSC2DBlockWrite.v8i16({{.*}}, {{.*}}, {{.*}}, {{.*}}, {{.*}}, [[ELEM_BITS]], [[TILE_WIDTH]], [[TILE_HEIGHT]], [[VBLOCKS]], [[TRANSPOSE]], [[VNNI]], {{.*}})
76
- triton_gen.2Dblockstore %ptr , %base_width , %base_height , %base_pitch , %x , %y , %stored_val {elem_size_in_bits =8 , tile_width =32 , tile_height =1 , v_blocks =1 , cache_control =Default } : (!llvm.ptr <1 >, i32 , i32 , i32 , i32 , i32 , vector <8 xi16 >)
77
- llvm.return
78
- }
79
-
80
- // -----
81
-
82
70
module attributes {" ttg.threads-per-warp" = 16 : i32 } {
83
71
llvm.func @triton_gen.2Dblockstore (%ptr : !llvm.ptr <1 >, %base_width : i32 , %base_height : i32 , %base_pitch : i32 , %x : i32 , %y : i32 , %stored_val : vector <8 xi16 >) {
84
72
// CHECK-COUNT-2: llvm.mlir.constant(1 : i32) : i32
@@ -108,8 +96,8 @@ llvm.func @triton_gen.2Dblockstore(%ptr : !llvm.ptr<1>, %base_width : i32, %base
108
96
109
97
// -----
110
98
99
+ // COM: threads-per-warp = 32 case.
111
100
llvm.func @triton_gen.2Dblockstore (%ptr : !llvm.ptr <1 >, %base_width : i32 , %base_height : i32 , %base_pitch : i32 , %x : i32 , %y : i32 , %stored_val : vector <1 xi16 >) {
112
- // COM: threads-per-warp = 32 case.
113
101
// CHECK: [[ELEM_BITS:%.*]] = llvm.mlir.constant(16 : i32) : i32
114
102
// CHECK: [[TILE_WIDTH:%.*]] = llvm.mlir.constant(16 : i32) : i32
115
103
// CHECK: [[TILE_HEIGHT:%.*]] = llvm.mlir.constant(2 : i32) : i32
0 commit comments