Skip to content

Commit 71687c2

Browse files
committed
Testcase updates (maybe revert this)
1 parent 675b5fb commit 71687c2

File tree

1 file changed

+9
-20
lines changed

1 file changed

+9
-20
lines changed

llvm/test/CodeGen/AMDGPU/s_bcnt0.ll

Lines changed: 9 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,33 @@
11
; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 6
22
; RUN: llc -mtriple=amdgcn -mcpu=gfx900 < %s | FileCheck %s
33

4-
define amdgpu_ps i32 @bcnt032_not_for_vregs(i64 %val) {
4+
define i32 @bcnt032_not_for_vregs(i32 %val0) {
55
; CHECK-LABEL: bcnt032_not_for_vregs:
66
; CHECK: ; %bb.0:
7+
; CHECK-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
78
; CHECK-NEXT: v_bcnt_u32_b32 v0, v0, 0
8-
; CHECK-NEXT: v_sub_u32_e32 v0, 32, v0
9-
; CHECK-NEXT: v_cmp_ne_u32_e32 vcc, 0, v0
10-
; CHECK-NEXT: ;;#ASMSTART
11-
; CHECK-NEXT: ; use v0
12-
; CHECK-NEXT: ;;#ASMEND
9+
; CHECK-NEXT: v_cmp_ne_u32_e32 vcc, 32, v0
1310
; CHECK-NEXT: v_cndmask_b32_e64 v0, 0, 1, vcc
14-
; CHECK-NEXT: v_readfirstlane_b32 s0, v0
15-
; CHECK-NEXT: ; return to shader part epilog
16-
%val0 = trunc i64 %val to i32
11+
; CHECK-NEXT: s_setpc_b64 s[30:31]
1712
%result = call i32 @llvm.ctpop.i32(i32 %val0)
1813
%result2 = sub i32 32, %result
19-
call void asm "; use $0", "s"(i32 %result2)
2014
%cmp = icmp ne i32 %result2, 0
2115
%zext = zext i1 %cmp to i32
2216
ret i32 %zext
2317
}
2418

25-
define amdgpu_ps i32 @bcnt064_not_for_vregs(i64 %val0) {
19+
define i32 @bcnt064_not_for_vregs(i64 %val0) {
2620
; CHECK-LABEL: bcnt064_not_for_vregs:
2721
; CHECK: ; %bb.0:
22+
; CHECK-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
2823
; CHECK-NEXT: v_bcnt_u32_b32 v0, v0, 0
2924
; CHECK-NEXT: v_bcnt_u32_b32 v0, v1, v0
30-
; CHECK-NEXT: v_sub_co_u32_e32 v0, vcc, 64, v0
31-
; CHECK-NEXT: v_subb_co_u32_e64 v1, s[0:1], 0, 0, vcc
32-
; CHECK-NEXT: v_cmp_ne_u64_e32 vcc, 0, v[0:1]
33-
; CHECK-NEXT: ;;#ASMSTART
34-
; CHECK-NEXT: ; use v[0:1]
35-
; CHECK-NEXT: ;;#ASMEND
25+
; CHECK-NEXT: v_mov_b32_e32 v1, 0
26+
; CHECK-NEXT: v_cmp_ne_u64_e32 vcc, 64, v[0:1]
3627
; CHECK-NEXT: v_cndmask_b32_e64 v0, 0, 1, vcc
37-
; CHECK-NEXT: v_readfirstlane_b32 s0, v0
38-
; CHECK-NEXT: ; return to shader part epilog
28+
; CHECK-NEXT: s_setpc_b64 s[30:31]
3929
%result = call i64 @llvm.ctpop.i64(i64 %val0)
4030
%result2 = sub i64 64, %result
41-
call void asm "; use $0", "s"(i64 %result2)
4231
%cmp = icmp ne i64 %result2, 0
4332
%zext = zext i1 %cmp to i32
4433
ret i32 %zext

0 commit comments

Comments
 (0)