1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 19:23:23 +01:00
llvm-mirror/test/CodeGen/AMDGPU/legalizedag-bug-expand-setcc.ll
Tom Stellard 3f1708598e R600 -> AMDGPU rename
llvm-svn: 239657
2015-06-13 03:28:10 +00:00

27 lines
696 B
LLVM

; RUN: llc < %s -march=r600 -mcpu=redwood | FileCheck %s
; This tests a bug where LegalizeDAG was not checking the target's
; BooleanContents value and always using one for true, when expanding
; setcc to select_cc.
;
; This bug caused the icmp IR instruction to be expanded to two machine
; instructions, when only one is needed.
;
; CHECK: {{^}}setcc_expand:
; CHECK: SET
; CHECK-NOT: CND
define void @setcc_expand(i32 addrspace(1)* %out, i32 %in) {
entry:
%0 = icmp eq i32 %in, 5
br i1 %0, label %IF, label %ENDIF
IF:
%1 = getelementptr i32, i32 addrspace(1)* %out, i32 1
store i32 0, i32 addrspace(1)* %1
br label %ENDIF
ENDIF:
store i32 0, i32 addrspace(1)* %out
ret void
}