1 ; RUN: llc -march=amdgcn -mcpu=gfx900 -verify-machineinstrs < %s | FileCheck -check-prefix=GCN %s
4 ; GCN-LABEL: {{^}}add_var_var_i1:
6 define amdgpu_kernel void @add_var_var_i1(i1 addrspace(1)* %out, i1 addrspace(1)* %in0, i1 addrspace(1)* %in1) {
7 %a = load volatile i1, i1 addrspace(1)* %in0
8 %b = load volatile i1, i1 addrspace(1)* %in1
10 store i1 %add, i1 addrspace(1)* %out
14 ; GCN-LABEL: {{^}}add_var_imm_i1:
16 define amdgpu_kernel void @add_var_imm_i1(i1 addrspace(1)* %out, i1 addrspace(1)* %in) {
17 %a = load volatile i1, i1 addrspace(1)* %in
19 store i1 %add, i1 addrspace(1)* %out
23 ; GCN-LABEL: {{^}}add_i1_cf:
26 define amdgpu_kernel void @add_i1_cf(i1 addrspace(1)* %out, i1 addrspace(1)* %a, i1 addrspace(1)* %b) {
28 %tid = call i32 @llvm.amdgcn.workitem.id.x()
29 %d_cmp = icmp ult i32 %tid, 16
30 br i1 %d_cmp, label %if, label %else
33 %0 = load volatile i1, i1 addrspace(1)* %a
37 %1 = load volatile i1, i1 addrspace(1)* %b
41 %2 = phi i1 [%0, %if], [%1, %else]
43 store i1 %3, i1 addrspace(1)* %out
47 declare i32 @llvm.amdgcn.workitem.id.x()