mirror of
https://github.com/RPCSX/llvm.git
synced 2024-11-26 13:10:34 +00:00
df0b94bcea
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112851 91177308-0d34-0410-b5e6-96231b3b80d8
25 lines
451 B
LLVM
25 lines
451 B
LLVM
; RUN: opt -S < %s -correlated-propagation | FileCheck %s
|
|
|
|
; CHECK: @test
|
|
define i16 @test(i32 %a, i1 %b) {
|
|
entry:
|
|
%c = icmp eq i32 %a, 0
|
|
br i1 %c, label %left, label %right
|
|
|
|
right:
|
|
%d = trunc i32 %a to i1
|
|
br label %merge
|
|
|
|
left:
|
|
br i1 %b, label %merge, label %other
|
|
|
|
other:
|
|
ret i16 23
|
|
|
|
merge:
|
|
%f = phi i1 [%b, %left], [%d, %right]
|
|
; CHECK: select i1 %f, i16 1, i16 0
|
|
%h = select i1 %f, i16 1, i16 0
|
|
; CHECK: ret i16 %h
|
|
ret i16 %h
|
|
} |