@@ -288,8 +288,8 @@ define i32 @test_bitcast_f32_to_i32_readfirstlane_convergencetoken(float %val) c
288288; CHECK-LABEL: define i32 @test_bitcast_f32_to_i32_readfirstlane_convergencetoken(
289289; CHECK-SAME: float [[VAL:%.*]]) #[[ATTR1]] {
290290; CHECK-NEXT: [[T:%.*]] = call token @llvm.experimental.convergence.entry()
291- ; CHECK-NEXT: [[BITCAST :%.*]] = bitcast float [[VAL]] to i32
292- ; CHECK-NEXT: [[RESULT:%.*]] = call i32 @llvm.amdgcn.readfirstlane.i32(i32 [[BITCAST]]) [ "convergencectrl"(token [[T]]) ]
291+ ; CHECK-NEXT: [[RESULT1 :%.*]] = call float @llvm.amdgcn.readfirstlane.f32(float [[VAL]]) [ "convergencectrl"(token [[T]]) ]
292+ ; CHECK-NEXT: [[RESULT:%.*]] = bitcast float [[RESULT1]] to i32
293293; CHECK-NEXT: ret i32 [[RESULT]]
294294;
295295 %t = call token @llvm.experimental.convergence.entry ()
@@ -302,8 +302,8 @@ define i32 @test_bitcast_f32_to_i32_readlane_convergencetoken(float %val, i32 in
302302; CHECK-LABEL: define i32 @test_bitcast_f32_to_i32_readlane_convergencetoken(
303303; CHECK-SAME: float [[VAL:%.*]], i32 inreg [[LANE_INDEX:%.*]]) #[[ATTR1]] {
304304; CHECK-NEXT: [[T:%.*]] = call token @llvm.experimental.convergence.entry()
305- ; CHECK-NEXT: [[BITCAST :%.*]] = bitcast float [[VAL]] to i32
306- ; CHECK-NEXT: [[RESULT:%.*]] = call i32 @llvm.amdgcn.readlane.i32(i32 [[BITCAST]], i32 [[LANE_INDEX]]) [ "convergencectrl"(token [[T]]) ]
305+ ; CHECK-NEXT: [[RESULT1 :%.*]] = call float @llvm.amdgcn.readlane.f32(float [[VAL]], i32 [[LANE_INDEX]]) [ "convergencectrl"(token [[T]]) ]
306+ ; CHECK-NEXT: [[RESULT:%.*]] = bitcast float [[RESULT1]] to i32
307307; CHECK-NEXT: ret i32 [[RESULT]]
308308;
309309 %t = call token @llvm.experimental.convergence.entry ()
0 commit comments