mirror of
https://github.com/RPCSX/llvm.git
synced 2025-01-10 06:00:30 +00:00
3a0161ac77
Summary: It is possible that the loop condition can be a boolean constant (infinite loop, for example). So we sould handle constant condition in annotating a loop. This patch adds this functionality to support annotating constant condition. Reviewers: tstellarAMD, arsenm Subscribers: llvm-commits, arsenm Differential Revision: http://reviews.llvm.org/D15093 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@260692 91177308-0d34-0410-b5e6-96231b3b80d8
25 lines
729 B
LLVM
25 lines
729 B
LLVM
; RUN: llc -march=amdgcn -mcpu=kaveri < %s | FileCheck %s
|
|
|
|
; CHECK-LABEL: {{^}}test:
|
|
; CHECK s_and_saveexec_b64
|
|
; CHECK s_xor_b64
|
|
; CHECK s_or_b64 exec, exec
|
|
; CHECK s_andn2_b64 exec, exec
|
|
; CHECK s_cbranch_execnz
|
|
define spir_kernel void @test(i32 %arg, i32 %arg1, i32 addrspace(1)* nocapture %arg2, i32 %arg3, i32 %arg4, i32 %arg5, i32 %arg6) {
|
|
bb:
|
|
%tmp = icmp ne i32 %arg, 0
|
|
%tmp7 = icmp ne i32 %arg1, 0
|
|
%tmp8 = and i1 %tmp, %tmp7
|
|
br i1 %tmp8, label %bb9, label %bb11
|
|
|
|
bb9: ; preds = %bb
|
|
br label %bb10
|
|
|
|
bb10: ; preds = %bb10, %bb9
|
|
br label %bb10
|
|
|
|
bb11: ; preds = %bb
|
|
ret void
|
|
}
|