xref: /aosp_15_r20/external/llvm/test/CodeGen/AMDGPU/and-gcn.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: llc -march=amdgcn -mcpu=verde -verify-machineinstrs < %s | FileCheck -check-prefix=SI -check-prefix=FUNC %s
2*9880d681SAndroid Build Coastguard Worker; RUN: llc -march=amdgcn -mcpu=tonga -verify-machineinstrs < %s | FileCheck -check-prefix=SI -check-prefix=FUNC %s
3*9880d681SAndroid Build Coastguard Worker
4*9880d681SAndroid Build Coastguard Worker; FUNC-LABEL: {{^}}v_and_i64_br:
5*9880d681SAndroid Build Coastguard Worker; SI: v_and_b32
6*9880d681SAndroid Build Coastguard Worker; SI: v_and_b32
7*9880d681SAndroid Build Coastguard Workerdefine void @v_and_i64_br(i64 addrspace(1)* %out, i64 addrspace(1)* %aptr, i64 addrspace(1)* %bptr) {
8*9880d681SAndroid Build Coastguard Workerentry:
9*9880d681SAndroid Build Coastguard Worker  %tid = call i32 @llvm.amdgcn.mbcnt.lo(i32 -1, i32 0) #0
10*9880d681SAndroid Build Coastguard Worker  %tmp0 = icmp eq i32 %tid, 0
11*9880d681SAndroid Build Coastguard Worker  br i1 %tmp0, label %if, label %endif
12*9880d681SAndroid Build Coastguard Worker
13*9880d681SAndroid Build Coastguard Workerif:
14*9880d681SAndroid Build Coastguard Worker  %a = load i64, i64 addrspace(1)* %aptr, align 8
15*9880d681SAndroid Build Coastguard Worker  %b = load i64, i64 addrspace(1)* %bptr, align 8
16*9880d681SAndroid Build Coastguard Worker  %and = and i64 %a, %b
17*9880d681SAndroid Build Coastguard Worker  br label %endif
18*9880d681SAndroid Build Coastguard Worker
19*9880d681SAndroid Build Coastguard Workerendif:
20*9880d681SAndroid Build Coastguard Worker  %tmp1 = phi i64 [%and, %if], [0, %entry]
21*9880d681SAndroid Build Coastguard Worker  store i64 %tmp1, i64 addrspace(1)* %out, align 8
22*9880d681SAndroid Build Coastguard Worker  ret void
23*9880d681SAndroid Build Coastguard Worker}
24*9880d681SAndroid Build Coastguard Worker
25*9880d681SAndroid Build Coastguard Workerdeclare i32 @llvm.amdgcn.mbcnt.lo(i32, i32) #0
26*9880d681SAndroid Build Coastguard Worker
27*9880d681SAndroid Build Coastguard Workerattributes #0 = { nounwind readnone }
28