14
14
; CHECK-DAG: OpName [[ZEXT8_16:%.*]] "u8tou16"
15
15
; CHECK-DAG: OpName [[ZEXT16_32:%.*]] "u16tou32"
16
16
17
+ ; CHECK-DAG: OpName %[[#R16:]] "r16"
17
18
; CHECK-DAG: OpName %[[#R17:]] "r17"
18
19
; CHECK-DAG: OpName %[[#R18:]] "r18"
19
20
; CHECK-DAG: OpName %[[#R19:]] "r19"
20
21
; CHECK-DAG: OpName %[[#R20:]] "r20"
21
- ; CHECK-DAG: OpName %[[#R21:]] "r21"
22
22
23
23
; CHECK-DAG: OpName [[TRUNC32_16v4:%.*]] "i32toi16v4"
24
24
; CHECK-DAG: OpName [[TRUNC32_8v4:%.*]] "i32toi8v4"
30
30
; CHECK-DAG: OpName [[ZEXT8_16v4:%.*]] "u8tou16v4"
31
31
; CHECK-DAG: OpName [[ZEXT16_32v4:%.*]] "u16tou32v4"
32
32
33
- ; CHECK-DAG: OpDecorate %[[#R17 ]] FPRoundingMode RTZ
34
- ; CHECK-DAG: OpDecorate %[[#R18 ]] FPRoundingMode RTE
35
- ; CHECK-DAG: OpDecorate %[[#R19 ]] FPRoundingMode RTP
36
- ; CHECK-DAG: OpDecorate %[[#R20 ]] FPRoundingMode RTN
37
- ; CHECK-DAG: OpDecorate %[[#R21 ]] SaturatedConversion
33
+ ; CHECK-DAG: OpDecorate %[[#R16 ]] FPRoundingMode RTZ
34
+ ; CHECK-DAG: OpDecorate %[[#R17 ]] FPRoundingMode RTE
35
+ ; CHECK-DAG: OpDecorate %[[#R18 ]] FPRoundingMode RTP
36
+ ; CHECK-DAG: OpDecorate %[[#R19 ]] FPRoundingMode RTN
37
+ ; CHECK-DAG: OpDecorate %[[#R20 ]] SaturatedConversion
38
38
39
39
; CHECK-DAG: [[F32:%.*]] = OpTypeFloat 32
40
40
; CHECK-DAG: [[F16:%.*]] = OpTypeFloat 16
@@ -258,7 +258,6 @@ define <4 x i32> @u16tou32v4(<4 x i16> %a) {
258
258
; CHECK: %[[#]] = OpUConvert [[U32]] %[[#]]
259
259
; CHECK: %[[#]] = OpSConvert [[U32]] %[[#]]
260
260
; CHECK: %[[#]] = OpFConvert [[F16]] %[[#]]
261
- ; CHECK: %[[#]] = OpQuantizeToF16 [[F32]] %[[#]]
262
261
; CHECK: %[[#]] = OpSatConvertSToU [[U64]] %[[#]]
263
262
; CHECK: %[[#]] = OpSatConvertUToS [[U64]] %[[#]]
264
263
; CHECK: %[[#]] = OpConvertPtrToU [[U64]] [[Arg1]]
@@ -267,11 +266,11 @@ define <4 x i32> @u16tou32v4(<4 x i16> %a) {
267
266
; CHECK: %[[#]] = OpSConvert [[U32v4]] %[[#]]
268
267
; CHECK: %[[#]] = OpConvertUToF [[F32]] %[[#]]
269
268
; CHECK: %[[#]] = OpConvertUToF [[F32]] %[[#]]
269
+ ; CHECK: %[[#R16]] = OpFConvert [[F32v2]] %[[#]]
270
270
; CHECK: %[[#R17]] = OpFConvert [[F32v2]] %[[#]]
271
271
; CHECK: %[[#R18]] = OpFConvert [[F32v2]] %[[#]]
272
272
; CHECK: %[[#R19]] = OpFConvert [[F32v2]] %[[#]]
273
- ; CHECK: %[[#R20]] = OpFConvert [[F32v2]] %[[#]]
274
- ; CHECK: %[[#R21]] = OpConvertFToU [[U8]] %[[#]]
273
+ ; CHECK: %[[#R20]] = OpConvertFToU [[U8]] %[[#]]
275
274
; CHECK: OpFunctionEnd
276
275
define dso_local spir_kernel void @test_wrappers (ptr addrspace (4 ) %arg , i64 %arg_ptr , <4 x i8 > %arg_v2 ) {
277
276
%r1 = call spir_func i32 @__spirv_ConvertFToU (float 0 .000000e+00 )
@@ -281,20 +280,19 @@ define dso_local spir_kernel void @test_wrappers(ptr addrspace(4) %arg, i64 %arg
281
280
%r5 = call spir_func i32 @__spirv_UConvert (i64 1 )
282
281
%r6 = call spir_func i32 @__spirv_SConvert (i64 1 )
283
282
%r7 = call spir_func half @__spirv_FConvert (float 0 .000000e+00 )
284
- %r8 = call spir_func float @__spirv_QuantizeToF16 (float 0 .000000e+00 )
285
- %r9 = call spir_func i64 @__spirv_SatConvertSToU (i64 1 )
286
- %r10 = call spir_func i64 @__spirv_SatConvertUToS (i64 1 )
287
- %r11 = call spir_func i64 @__spirv_ConvertPtrToU (ptr addrspace (4 ) %arg )
288
- %r12 = call spir_func ptr addrspace (4 ) @__spirv_ConvertUToPtr (i64 %arg_ptr )
289
- %r13 = call spir_func <4 x i32 > @_Z22__spirv_UConvert_Rint2Dv2_a (<4 x i8 > %arg_v2 )
290
- %r14 = call spir_func <4 x i32 > @_Z22__spirv_SConvert_Rint2Dv2_a (<4 x i8 > %arg_v2 )
291
- %r15 = call spir_func float @_Z30__spirv_ConvertUToF_Rfloat_rtz (i64 %arg_ptr )
292
- %r16 = call spir_func float @__spirv_ConvertUToF_Rfloat_rtz (i64 %arg_ptr )
293
- %r17 = call spir_func <2 x float > @_Z28__spirv_FConvert_Rfloat2_rtzDv2_DF16_ (<2 x half > noundef <half 0xH409A, half 0xH439A>)
294
- %r18 = call spir_func <2 x float > @_Z28__spirv_FConvert_Rfloat2_rteDv2_DF16_ (<2 x half > noundef <half 0xH409A, half 0xH439A>)
295
- %r19 = call spir_func <2 x float > @_Z28__spirv_FConvert_Rfloat2_rtpDv2_DF16_ (<2 x half > noundef <half 0xH409A, half 0xH439A>)
296
- %r20 = call spir_func <2 x float > @_Z28__spirv_FConvert_Rfloat2_rtnDv2_DF16_ (<2 x half > noundef <half 0xH409A, half 0xH439A>)
297
- %r21 = call spir_func i8 @_Z30__spirv_ConvertFToU_Ruchar_satf (float noundef 42 .0 )
283
+ %r8 = call spir_func i64 @__spirv_SatConvertSToU (i64 1 )
284
+ %r9 = call spir_func i64 @__spirv_SatConvertUToS (i64 1 )
285
+ %r10 = call spir_func i64 @__spirv_ConvertPtrToU (ptr addrspace (4 ) %arg )
286
+ %r11 = call spir_func ptr addrspace (4 ) @__spirv_ConvertUToPtr (i64 %arg_ptr )
287
+ %r12 = call spir_func <4 x i32 > @_Z22__spirv_UConvert_Rint2Dv2_a (<4 x i8 > %arg_v2 )
288
+ %r13 = call spir_func <4 x i32 > @_Z22__spirv_SConvert_Rint2Dv2_a (<4 x i8 > %arg_v2 )
289
+ %r14 = call spir_func float @_Z30__spirv_ConvertUToF_Rfloat_rtz (i64 %arg_ptr )
290
+ %r15 = call spir_func float @__spirv_ConvertUToF_Rfloat_rtz (i64 %arg_ptr )
291
+ %r16 = call spir_func <2 x float > @_Z28__spirv_FConvert_Rfloat2_rtzDv2_DF16_ (<2 x half > noundef <half 0xH409A, half 0xH439A>)
292
+ %r17 = call spir_func <2 x float > @_Z28__spirv_FConvert_Rfloat2_rteDv2_DF16_ (<2 x half > noundef <half 0xH409A, half 0xH439A>)
293
+ %r18 = call spir_func <2 x float > @_Z28__spirv_FConvert_Rfloat2_rtpDv2_DF16_ (<2 x half > noundef <half 0xH409A, half 0xH439A>)
294
+ %r19 = call spir_func <2 x float > @_Z28__spirv_FConvert_Rfloat2_rtnDv2_DF16_ (<2 x half > noundef <half 0xH409A, half 0xH439A>)
295
+ %r20 = call spir_func i8 @_Z30__spirv_ConvertFToU_Ruchar_satf (float noundef 42 .0 )
298
296
ret void
299
297
}
300
298
@@ -305,7 +303,6 @@ declare dso_local spir_func float @__spirv_ConvertUToF(i32)
305
303
declare dso_local spir_func i32 @__spirv_UConvert (i64 )
306
304
declare dso_local spir_func i32 @__spirv_SConvert (i64 )
307
305
declare dso_local spir_func half @__spirv_FConvert (float )
308
- declare dso_local spir_func float @__spirv_QuantizeToF16 (float )
309
306
declare dso_local spir_func i64 @__spirv_SatConvertSToU (i64 )
310
307
declare dso_local spir_func i64 @__spirv_SatConvertUToS (i64 )
311
308
declare dso_local spir_func i64 @__spirv_ConvertPtrToU (ptr addrspace (4 ))
0 commit comments