mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-08-05 13:26:55 +00:00
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
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
; 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)
|
Reference in New Issue
Block a user