- Apr 28, 2006
-
-
Chris Lattner authored
llvm-svn: 28007
-
- Apr 27, 2006
-
-
Chris Lattner authored
Transforms/InstCombine/vec_insert_to_shuffle.ll llvm-svn: 27997
-
- Apr 20, 2006
-
-
Chris Lattner authored
llvm-svn: 27912
-
Andrew Lenharth authored
llvm-svn: 27881
-
Andrew Lenharth authored
can be converted to losslessly, we can continue the conversion to a direct call. llvm-svn: 27880
-
- Apr 18, 2006
-
-
Chris Lattner authored
if the pointer is known aligned. llvm-svn: 27781
-
- Apr 16, 2006
-
-
Chris Lattner authored
Make the insert/extract elt -> shuffle code more aggressive. This fixes CodeGen/PowerPC/vec_shuffle.ll llvm-svn: 27728
-
Chris Lattner authored
llvm-svn: 27727
-
- Apr 15, 2006
-
-
Chris Lattner authored
maximal shuffles out of them where possible. llvm-svn: 27717
-
- Apr 14, 2006
-
-
Chris Lattner authored
insert/extractelement operations. This implements Transforms/ScalarRepl/vector_promote.ll llvm-svn: 27710
-
- Apr 12, 2006
-
-
Reid Spencer authored
llvm-svn: 27625
-
Chris Lattner authored
aggressive in some cases where LLVMGCC 4 is inserting casts for no reason. This implements InstCombine/cast.ll:test27/28. llvm-svn: 27620
-
- Apr 11, 2006
-
-
Chris Lattner authored
llvm-svn: 27573
-
Chris Lattner authored
llvm-svn: 27571
-
- Apr 08, 2006
-
-
Chris Lattner authored
llvm-svn: 27513
-
- Apr 06, 2006
-
-
Chris Lattner authored
us to compile oh-so-realistic stuff like this: vec_vperm(A, B, (vector unsigned char){14}); to: vspltb v0, v0, 14 instead of: vspltisb v0, 14 vperm v0, v2, v1, v0 llvm-svn: 27452
-
- Apr 02, 2006
-
-
Chris Lattner authored
%tmp = cast <4 x uint> %tmp to <4 x int> ; <<4 x int>> [#uses=1] %tmp = cast <4 x int> %tmp to <4 x float> ; <<4 x float>> [#uses=1] into: %tmp = cast <4 x uint> %tmp to <4 x float> ; <<4 x float>> [#uses=1] llvm-svn: 27355
-
Chris Lattner authored
%tmp = cast <4 x uint>* %testData to <4 x int>* ; <<4 x int>*> [#uses=1] %tmp = load <4 x int>* %tmp ; <<4 x int>> [#uses=1] to this: %tmp = load <4 x uint>* %testData ; <<4 x uint>> [#uses=1] %tmp = cast <4 x uint> %tmp to <4 x int> ; <<4 x int>> [#uses=1] llvm-svn: 27353
-
Chris Lattner authored
elimination of one load from this: int AreSecondAndThirdElementsBothNegative( vector float *in ) { #define QNaN 0x7FC00000 const vector unsigned int testData = (vector unsigned int)( QNaN, 0, 0, QNaN ); vector float test = vec_ld( 0, (float*) &testData ); return ! vec_any_ge( test, *in ); } Now generating: _AreSecondAndThirdElementsBothNegative: mfspr r2, 256 oris r4, r2, 49152 mtspr 256, r4 li r4, lo16(LCPI1_0) lis r5, ha16(LCPI1_0) addi r6, r1, -16 lvx v0, r5, r4 stvx v0, 0, r6 lvx v1, 0, r3 vcmpgefp. v0, v0, v1 mfcr r3, 2 rlwinm r3, r3, 27, 31, 31 xori r3, r3, 1 cntlzw r3, r3 srwi r3, r3, 5 mtspr 256, r2 blr llvm-svn: 27352
-
Chris Lattner authored
llvm-svn: 27330
-
- Apr 01, 2006
-
-
Chris Lattner authored
Fold (B&A)^A == ~B & A This implements InstCombine/xor.ll:test2[56] llvm-svn: 27328
-
Chris Lattner authored
extract_element'd value, do so. llvm-svn: 27323
-
- Mar 31, 2006
-
-
Chris Lattner authored
llvm-svn: 27300
-
Chris Lattner authored
llvm-svn: 27261
-
- Mar 25, 2006
-
-
Chris Lattner authored
llvm-svn: 27125
-
- Mar 24, 2006
-
-
Chris Lattner authored
llvm-svn: 27052
-
Chris Lattner authored
llvm-svn: 27051
-
- Mar 23, 2006
-
-
Jim Laskey authored
llvm-svn: 26992
-
- Mar 22, 2006
-
-
Chris Lattner authored
llvm-svn: 26953
-
- Mar 19, 2006
-
-
Chris Lattner authored
Transforms/CorrelatedExprs/switch.ll Patch contributed by Eric Kidd! llvm-svn: 26872
-
- Mar 18, 2006
-
-
Evan Cheng authored
- Added more debugging info. - Allow reuse of IV of negative stride. e.g. -4 stride == 2 * iv of -2 stride. llvm-svn: 26841
-
Evan Cheng authored
for more IV reuses. llvm-svn: 26837
-
- Mar 17, 2006
-
-
Evan Cheng authored
of a smaller stride even if they have a common loop invariant expression part. llvm-svn: 26828
-
- Mar 16, 2006
-
-
Evan Cheng authored
stride. For a set of uses of the IV of a stride which is a multiple of another stride, do not insert a new IV expression. Rather, reuse the previous IV and rewrite the uses as uses of IV expression multiplied by the factor. e.g. x = 0 ...; x ++ y = 0 ...; y += 4 then use of y can be rewritten as use of 4*x for x86. llvm-svn: 26803
-
- Mar 14, 2006
-
-
Chris Lattner authored
A*A*B + A*A*C --> A*(A*B+A*C) --> A*(A*(B+C)) This implements Reassociate/mul-factor3.ll llvm-svn: 26757
-
Chris Lattner authored
llvm-svn: 26755
-
Chris Lattner authored
(x<<1)+(y<<1) -> (X+Y)<<1. This implements Transforms/Reassociate/shift-factor.ll llvm-svn: 26753
-
Evan Cheng authored
transformation decisions. llvm-svn: 26738
-
- Mar 08, 2006
-
-
Chris Lattner authored
arrays out of range in a horrible way, but we shouldn't break it anyway. Details in the comments. llvm-svn: 26606
-
- Mar 07, 2006
-
-
Chris Lattner authored
llvm-svn: 26580
-