- Apr 27, 2006
-
-
Chris Lattner authored
Transforms/InstCombine/vec_insert_to_shuffle.ll llvm-svn: 27997
-
Chris Lattner authored
nondeterminism being bad) could cause some trivial missed optimizations (dead phi nodes being left around for later passes to clean up). With this, llvm-gcc4 now bootstraps and correctly compares. I don't know why I never tried to do it before... :) llvm-svn: 27984
-
- 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 13, 2006
-
-
Andrew Lenharth authored
llvm-svn: 27652
-
- 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 10, 2006
-
-
Andrew Lenharth authored
are visible to analysis as intrinsics. That is, make sure someone doesn't pass free around by address in some struct (as happens in say 176.gcc). This doesn't get rid of any indirect calls, just ensure calls to free and malloc are always direct. llvm-svn: 27560
-
- Apr 08, 2006
-
-
Chris Lattner authored
llvm-svn: 27513
-
- Apr 07, 2006
-
-
Chris Lattner authored
llvm-svn: 27478
-
- 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: 27344
-
Chris Lattner authored
llvm-svn: 27332
-
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 27, 2006
-
-
Chris Lattner authored
llvm-svn: 27161
-
- 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: 26993
-
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
-