1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2025-02-01 13:11:39 +01:00

move PR5945 here.

llvm-svn: 94350
This commit is contained in:
Chris Lattner 2010-01-24 02:27:03 +00:00
parent 5d31547fec
commit d9f55b7c3d

View File

@ -430,6 +430,35 @@ This theoretically may help improve twolf slightly (used in dimbox.c:142?).
===-------------------------------------------------------------------------===
PR5945: This:
define i32 @clamp0g(i32 %a) {
entry:
%cmp = icmp slt i32 %a, 0
%sel = select i1 %cmp, i32 0, i32 %a
ret i32 %sel
}
Is compile to this with the PowerPC (32-bit) backend:
_clamp0g:
cmpwi cr0, r3, 0
li r2, 0
blt cr0, LBB1_2
; BB#1: ; %entry
mr r2, r3
LBB1_2: ; %entry
mr r3, r2
blr
This could be reduced to the much simpler:
_clamp0g:
srawi r2, r3, 31
andc r3, r3, r2
blr
===-------------------------------------------------------------------------===
int foo(int N, int ***W, int **TK, int X) {
int t, i;