@@ -15,121 +15,121 @@ typedef short v16s __attribute__((ext_vector_type(16)));
1515
1616// CHECK-GFX1200-LABEL: @test_amdgcn_swmmac_f32_16x16x32_f16_w32(
1717// CHECK-GFX1200-NEXT: entry:
18- // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x float> @llvm.amdgcn.swmmac.f32.16x16x32.f16.v8f32.v8f16.v16f16.i16 (<8 x half> [[A:%.*]], <16 x half> [[B:%.*]], <8 x float> [[C:%.*]], i16 [[INDEX:%.*]])
18+ // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x float> @llvm.amdgcn.swmmac.f32.16x16x32.f16.v8f32.v8f16.v16f16.i32 (<8 x half> [[A:%.*]], <16 x half> [[B:%.*]], <8 x float> [[C:%.*]], i32 [[INDEX:%.*]])
1919// CHECK-GFX1200-NEXT: store <8 x float> [[TMP0]], ptr addrspace(1) [[OUT:%.*]], align 32, !tbaa [[TBAA4:![0-9]+]]
2020// CHECK-GFX1200-NEXT: ret void
2121//
22- void test_amdgcn_swmmac_f32_16x16x32_f16_w32 (global v8f * out , v8h a , v16h b , v8f c , short index )
22+ void test_amdgcn_swmmac_f32_16x16x32_f16_w32 (global v8f * out , v8h a , v16h b , v8f c , int index )
2323{
2424 * out = __builtin_amdgcn_swmmac_f32_16x16x32_f16_w32 (a , b , c , index );
2525}
2626
2727// CHECK-GFX1200-LABEL: @test_amdgcn_swmmac_f32_16x16x32_bf16_w32(
2828// CHECK-GFX1200-NEXT: entry:
29- // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x float> @llvm.amdgcn.swmmac.f32.16x16x32.bf16.v8f32.v8i16.v16i16.i16 (<8 x i16> [[A:%.*]], <16 x i16> [[B:%.*]], <8 x float> [[C:%.*]], i16 [[INDEX:%.*]])
29+ // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x float> @llvm.amdgcn.swmmac.f32.16x16x32.bf16.v8f32.v8i16.v16i16.i32 (<8 x i16> [[A:%.*]], <16 x i16> [[B:%.*]], <8 x float> [[C:%.*]], i32 [[INDEX:%.*]])
3030// CHECK-GFX1200-NEXT: store <8 x float> [[TMP0]], ptr addrspace(1) [[OUT:%.*]], align 32, !tbaa [[TBAA4]]
3131// CHECK-GFX1200-NEXT: ret void
3232//
33- void test_amdgcn_swmmac_f32_16x16x32_bf16_w32 (global v8f * out , v8s a , v16s b , v8f c , short index )
33+ void test_amdgcn_swmmac_f32_16x16x32_bf16_w32 (global v8f * out , v8s a , v16s b , v8f c , int index )
3434{
3535 * out = __builtin_amdgcn_swmmac_f32_16x16x32_bf16_w32 (a , b , c , index );
3636}
3737
3838// CHECK-GFX1200-LABEL: @test_amdgcn_swmmac_f16_16x16x32_f16_w32(
3939// CHECK-GFX1200-NEXT: entry:
40- // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x half> @llvm.amdgcn.swmmac.f16.16x16x32.f16.v8f16.v8f16.v16f16.i16 (<8 x half> [[A:%.*]], <16 x half> [[B:%.*]], <8 x half> [[C:%.*]], i16 [[INDEX:%.*]])
40+ // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x half> @llvm.amdgcn.swmmac.f16.16x16x32.f16.v8f16.v8f16.v16f16.i32 (<8 x half> [[A:%.*]], <16 x half> [[B:%.*]], <8 x half> [[C:%.*]], i32 [[INDEX:%.*]])
4141// CHECK-GFX1200-NEXT: store <8 x half> [[TMP0]], ptr addrspace(1) [[OUT:%.*]], align 16, !tbaa [[TBAA4]]
4242// CHECK-GFX1200-NEXT: ret void
4343//
44- void test_amdgcn_swmmac_f16_16x16x32_f16_w32 (global v8h * out , v8h a , v16h b , v8h c , short index )
44+ void test_amdgcn_swmmac_f16_16x16x32_f16_w32 (global v8h * out , v8h a , v16h b , v8h c , int index )
4545{
4646 * out = __builtin_amdgcn_swmmac_f16_16x16x32_f16_w32 (a , b , c , index );
4747}
4848
4949// CHECK-GFX1200-LABEL: @test_amdgcn_swmmac_bf16_16x16x32_bf16_w32(
5050// CHECK-GFX1200-NEXT: entry:
51- // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x i16> @llvm.amdgcn.swmmac.bf16.16x16x32.bf16.v8i16.v8i16.v16i16.i16 (<8 x i16> [[A:%.*]], <16 x i16> [[B:%.*]], <8 x i16> [[C:%.*]], i16 [[INDEX:%.*]])
51+ // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x i16> @llvm.amdgcn.swmmac.bf16.16x16x32.bf16.v8i16.v8i16.v16i16.i32 (<8 x i16> [[A:%.*]], <16 x i16> [[B:%.*]], <8 x i16> [[C:%.*]], i32 [[INDEX:%.*]])
5252// CHECK-GFX1200-NEXT: store <8 x i16> [[TMP0]], ptr addrspace(1) [[OUT:%.*]], align 16, !tbaa [[TBAA4]]
5353// CHECK-GFX1200-NEXT: ret void
5454//
55- void test_amdgcn_swmmac_bf16_16x16x32_bf16_w32 (global v8s * out , v8s a , v16s b , v8s c , short index )
55+ void test_amdgcn_swmmac_bf16_16x16x32_bf16_w32 (global v8s * out , v8s a , v16s b , v8s c , int index )
5656{
5757 * out = __builtin_amdgcn_swmmac_bf16_16x16x32_bf16_w32 (a , b , c , index );
5858}
5959
6060// CHECK-GFX1200-LABEL: @test_amdgcn_swmmac_i32_16x16x32_iu8_w32(
6161// CHECK-GFX1200-NEXT: entry:
62- // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x i32> @llvm.amdgcn.swmmac.i32.16x16x32.iu8.v8i32.v2i32.v4i32.i16 (i1 true, <2 x i32> [[A:%.*]], i1 true, <4 x i32> [[B:%.*]], <8 x i32> [[C:%.*]], i16 [[INDEX:%.*]], i1 true)
62+ // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x i32> @llvm.amdgcn.swmmac.i32.16x16x32.iu8.v8i32.v2i32.v4i32.i32 (i1 true, <2 x i32> [[A:%.*]], i1 true, <4 x i32> [[B:%.*]], <8 x i32> [[C:%.*]], i32 [[INDEX:%.*]], i1 true)
6363// CHECK-GFX1200-NEXT: store <8 x i32> [[TMP0]], ptr addrspace(1) [[OUT:%.*]], align 32, !tbaa [[TBAA4]]
6464// CHECK-GFX1200-NEXT: ret void
6565//
66- void test_amdgcn_swmmac_i32_16x16x32_iu8_w32 (global v8i * out , v2i a , v4i b , v8i c , short index )
66+ void test_amdgcn_swmmac_i32_16x16x32_iu8_w32 (global v8i * out , v2i a , v4i b , v8i c , int index )
6767{
6868 * out = __builtin_amdgcn_swmmac_i32_16x16x32_iu8_w32 (true, a , true, b , c , index , true);
6969}
7070
7171// CHECK-GFX1200-LABEL: @test_amdgcn_swmmac_i32_16x16x32_iu4_w32(
7272// CHECK-GFX1200-NEXT: entry:
73- // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x i32> @llvm.amdgcn.swmmac.i32.16x16x32.iu4.v8i32.i32.v2i32.i16 (i1 true, i32 [[A:%.*]], i1 true, <2 x i32> [[B:%.*]], <8 x i32> [[C:%.*]], i16 [[INDEX:%.*]], i1 true)
73+ // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x i32> @llvm.amdgcn.swmmac.i32.16x16x32.iu4.v8i32.i32.v2i32.i32 (i1 true, i32 [[A:%.*]], i1 true, <2 x i32> [[B:%.*]], <8 x i32> [[C:%.*]], i32 [[INDEX:%.*]], i1 true)
7474// CHECK-GFX1200-NEXT: store <8 x i32> [[TMP0]], ptr addrspace(1) [[OUT:%.*]], align 32, !tbaa [[TBAA4]]
7575// CHECK-GFX1200-NEXT: ret void
7676//
77- void test_amdgcn_swmmac_i32_16x16x32_iu4_w32 (global v8i * out , int a , v2i b , v8i c , short index )
77+ void test_amdgcn_swmmac_i32_16x16x32_iu4_w32 (global v8i * out , int a , v2i b , v8i c , int index )
7878{
7979 * out = __builtin_amdgcn_swmmac_i32_16x16x32_iu4_w32 (true, a , true, b , c , index , true);
8080}
8181
8282// CHECK-GFX1200-LABEL: @test_amdgcn_swmmac_i32_16x16x64_iu4_w32(
8383// CHECK-GFX1200-NEXT: entry:
84- // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x i32> @llvm.amdgcn.swmmac.i32.16x16x64.iu4.v8i32.v2i32.v4i32.i16 (i1 true, <2 x i32> [[A:%.*]], i1 true, <4 x i32> [[B:%.*]], <8 x i32> [[C:%.*]], i16 [[INDEX:%.*]], i1 true)
84+ // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x i32> @llvm.amdgcn.swmmac.i32.16x16x64.iu4.v8i32.v2i32.v4i32.i32 (i1 true, <2 x i32> [[A:%.*]], i1 true, <4 x i32> [[B:%.*]], <8 x i32> [[C:%.*]], i32 [[INDEX:%.*]], i1 true)
8585// CHECK-GFX1200-NEXT: store <8 x i32> [[TMP0]], ptr addrspace(1) [[OUT:%.*]], align 32, !tbaa [[TBAA4]]
8686// CHECK-GFX1200-NEXT: ret void
8787//
88- void test_amdgcn_swmmac_i32_16x16x64_iu4_w32 (global v8i * out , v2i a , v4i b , v8i c , short index )
88+ void test_amdgcn_swmmac_i32_16x16x64_iu4_w32 (global v8i * out , v2i a , v4i b , v8i c , int index )
8989{
9090 * out = __builtin_amdgcn_swmmac_i32_16x16x64_iu4_w32 (true, a , true, b , c , index , true);
9191}
9292
9393// CHECK-GFX1200-LABEL: @test_amdgcn_swmmac_f32_16x16x32_fp8_fp8_w32(
9494// CHECK-GFX1200-NEXT: entry:
95- // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x float> @llvm.amdgcn.swmmac.f32.16x16x32.fp8.fp8.v8f32.v2i32.v4i32.i16 (<2 x i32> [[A:%.*]], <4 x i32> [[B:%.*]], <8 x float> [[C:%.*]], i16 [[INDEX:%.*]])
95+ // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x float> @llvm.amdgcn.swmmac.f32.16x16x32.fp8.fp8.v8f32.v2i32.v4i32.i32 (<2 x i32> [[A:%.*]], <4 x i32> [[B:%.*]], <8 x float> [[C:%.*]], i32 [[INDEX:%.*]])
9696// CHECK-GFX1200-NEXT: store <8 x float> [[TMP0]], ptr addrspace(1) [[OUT:%.*]], align 32, !tbaa [[TBAA4]]
9797// CHECK-GFX1200-NEXT: ret void
9898//
99- void test_amdgcn_swmmac_f32_16x16x32_fp8_fp8_w32 (global v8f * out , v2i a , v4i b , v8f c , short index )
99+ void test_amdgcn_swmmac_f32_16x16x32_fp8_fp8_w32 (global v8f * out , v2i a , v4i b , v8f c , int index )
100100{
101101 * out = __builtin_amdgcn_swmmac_f32_16x16x32_fp8_fp8_w32 (a , b , c , index );
102102}
103103
104104// CHECK-GFX1200-LABEL: @test_amdgcn_swmmac_f32_16x16x32_fp8_bf8_w32(
105105// CHECK-GFX1200-NEXT: entry:
106- // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x float> @llvm.amdgcn.swmmac.f32.16x16x32.fp8.bf8.v8f32.v2i32.v4i32.i16 (<2 x i32> [[A:%.*]], <4 x i32> [[B:%.*]], <8 x float> [[C:%.*]], i16 [[INDEX:%.*]])
106+ // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x float> @llvm.amdgcn.swmmac.f32.16x16x32.fp8.bf8.v8f32.v2i32.v4i32.i32 (<2 x i32> [[A:%.*]], <4 x i32> [[B:%.*]], <8 x float> [[C:%.*]], i32 [[INDEX:%.*]])
107107// CHECK-GFX1200-NEXT: store <8 x float> [[TMP0]], ptr addrspace(1) [[OUT:%.*]], align 32, !tbaa [[TBAA4]]
108108// CHECK-GFX1200-NEXT: ret void
109109//
110- void test_amdgcn_swmmac_f32_16x16x32_fp8_bf8_w32 (global v8f * out , v2i a , v4i b , v8f c , short index )
110+ void test_amdgcn_swmmac_f32_16x16x32_fp8_bf8_w32 (global v8f * out , v2i a , v4i b , v8f c , int index )
111111{
112112 * out = __builtin_amdgcn_swmmac_f32_16x16x32_fp8_bf8_w32 (a , b , c , index );
113113}
114114
115115// CHECK-GFX1200-LABEL: @test_amdgcn_swmmac_f32_16x16x32_bf8_fp8_w32(
116116// CHECK-GFX1200-NEXT: entry:
117- // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x float> @llvm.amdgcn.swmmac.f32.16x16x32.bf8.fp8.v8f32.v2i32.v4i32.i16 (<2 x i32> [[A:%.*]], <4 x i32> [[B:%.*]], <8 x float> [[C:%.*]], i16 [[INDEX:%.*]])
117+ // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x float> @llvm.amdgcn.swmmac.f32.16x16x32.bf8.fp8.v8f32.v2i32.v4i32.i32 (<2 x i32> [[A:%.*]], <4 x i32> [[B:%.*]], <8 x float> [[C:%.*]], i32 [[INDEX:%.*]])
118118// CHECK-GFX1200-NEXT: store <8 x float> [[TMP0]], ptr addrspace(1) [[OUT:%.*]], align 32, !tbaa [[TBAA4]]
119119// CHECK-GFX1200-NEXT: ret void
120120//
121- void test_amdgcn_swmmac_f32_16x16x32_bf8_fp8_w32 (global v8f * out , v2i a , v4i b , v8f c , short index )
121+ void test_amdgcn_swmmac_f32_16x16x32_bf8_fp8_w32 (global v8f * out , v2i a , v4i b , v8f c , int index )
122122{
123123 * out = __builtin_amdgcn_swmmac_f32_16x16x32_bf8_fp8_w32 (a , b , c , index );
124124}
125125
126126// CHECK-GFX1200-LABEL: @test_amdgcn_swmmac_f32_16x16x32_bf8_bf8_w32(
127127// CHECK-GFX1200-NEXT: entry:
128- // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x float> @llvm.amdgcn.swmmac.f32.16x16x32.bf8.bf8.v8f32.v2i32.v4i32.i16 (<2 x i32> [[A:%.*]], <4 x i32> [[B:%.*]], <8 x float> [[C:%.*]], i16 [[INDEX:%.*]])
128+ // CHECK-GFX1200-NEXT: [[TMP0:%.*]] = tail call <8 x float> @llvm.amdgcn.swmmac.f32.16x16x32.bf8.bf8.v8f32.v2i32.v4i32.i32 (<2 x i32> [[A:%.*]], <4 x i32> [[B:%.*]], <8 x float> [[C:%.*]], i32 [[INDEX:%.*]])
129129// CHECK-GFX1200-NEXT: store <8 x float> [[TMP0]], ptr addrspace(1) [[OUT:%.*]], align 32, !tbaa [[TBAA4]]
130130// CHECK-GFX1200-NEXT: ret void
131131//
132- void test_amdgcn_swmmac_f32_16x16x32_bf8_bf8_w32 (global v8f * out , v2i a , v4i b , v8f c , short index )
132+ void test_amdgcn_swmmac_f32_16x16x32_bf8_bf8_w32 (global v8f * out , v2i a , v4i b , v8f c , int index )
133133{
134134 * out = __builtin_amdgcn_swmmac_f32_16x16x32_bf8_bf8_w32 (a , b , c , index );
135135}
0 commit comments