mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-03 17:39:48 +00:00
e25b96473e
turn icmp eq a+x, b+x into icmp eq a, b if a+x or b+x has other uses. This may have been increasing register pressure leading to the bzip2 slowdown. llvm-svn: 63487
23 lines
455 B
LLVM
23 lines
455 B
LLVM
; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep {%B = add i8 %b, %x}
|
|
; PR2698
|
|
|
|
declare void @use1(i1)
|
|
declare void @use8(i8)
|
|
|
|
define void @test1(i8 %a, i8 %b, i8 %x) {
|
|
%A = add i8 %a, %x
|
|
%B = add i8 %b, %x
|
|
%C = icmp eq i8 %A, %B
|
|
call void @use1(i1 %C)
|
|
ret void
|
|
}
|
|
|
|
define void @test2(i8 %a, i8 %b, i8 %x) {
|
|
%A = add i8 %a, %x
|
|
%B = add i8 %b, %x
|
|
%C = icmp eq i8 %A, %B
|
|
call void @use1(i1 %C)
|
|
call void @use8(i8 %A)
|
|
ret void
|
|
}
|