llvm/test/Transforms/PredicateSimplifier/2007-03-17-OpsToDefVRP.ll
Nick Lewycky 1eda0f60d7 Propagate ValueRanges across equality.
Add some more micro-optimizations: x * 0 = 0, a - x = a --> x = 0.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35138 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-18 01:09:32 +00:00

20 lines
399 B
LLVM

; RUN: llvm-as < %s | opt -predsimplify | llvm-dis | grep -v %c
define void @foo(i8* %X, i8* %Y) {
entry:
%A = load i8* %X
%B = load i8* %Y
%a = icmp ult i8 %B, 10
br i1 %a, label %cond_true, label %URB
cond_true:
%b = icmp eq i8 %A, %B
br i1 %b, label %cond_true2, label %URB
cond_true2:
%c = icmp ult i8 %A, 11
call i8 @bar(i1 %c)
ret void
URB:
ret void
}
declare i8 @bar(i1)