summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* The BFS scheduler is apparently nondeterminstic (causes many llvmgcc bootstrapChris Lattner2006-04-211-2/+5
| | | | | | miscompares). Switch RISC targets to use the list-td scheduler, which isn't. llvm-svn: 27933
* Remove a hack required by V9.Chris Lattner2006-04-211-4/+2
| | | | llvm-svn: 27931
* Fix a couple more memory issuesChris Lattner2006-04-211-4/+4
| | | | llvm-svn: 27930
* Now generating perfect (I think) code for "vector set" with a single non-zeroEvan Cheng2006-04-213-104/+174
| | | | | | | | | | | | | | | | | | | scalar value. e.g. _mm_set_epi32(0, a, 0, 0); ==> movd 4(%esp), %xmm0 pshufd $69, %xmm0, %xmm0 _mm_set_epi8(0, 0, 0, 0, 0, a, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); ==> movzbw 4(%esp), %ax movzwl %ax, %eax pxor %xmm0, %xmm0 pinsrw $5, %eax, %xmm0 llvm-svn: 27923
* Fix a really subtle and obnoxious memory bug that caused issues with anChris Lattner2006-04-201-11/+11
| | | | | | | | | llvm-gcc4 boostrap. Whenever a node is deleted by the dag combiner, it *must* be returned by the visit function, or the dag combiner will not know that the node has been processed (and will, e.g., send it to the target dag combine xforms). llvm-svn: 27922
* Fix Transforms/ScalarRepl/2006-04-20-PromoteCrash.llChris Lattner2006-04-201-1/+1
| | | | llvm-svn: 27912
* Fix the CodeGen/PowerPC/buildvec_canonicalize.ll regression last night.Chris Lattner2006-04-201-1/+1
| | | | llvm-svn: 27908
* add a noteChris Lattner2006-04-201-0/+18
| | | | llvm-svn: 27907
* remove some v9 specific codeChris Lattner2006-04-201-20/+0
| | | | llvm-svn: 27900
* This field no longer existsChris Lattner2006-04-201-2/+0
| | | | llvm-svn: 27899
* Remove this obsolete fileChris Lattner2006-04-201-266/+0
| | | | llvm-svn: 27895
* Remove some of the obvious V9-specific cruftChris Lattner2006-04-201-101/+2
| | | | llvm-svn: 27893
* This target is no longer built. The ,v files now live in the reoptimizer.Chris Lattner2006-04-2090-32210/+0
| | | | llvm-svn: 27885
* Make code match cvs commit message :)Andrew Lenharth2006-04-201-1/+1
| | | | llvm-svn: 27881
* If we can convert the return pointer type into an integer that IntPtrTypeAndrew Lenharth2006-04-201-2/+4
| | | | | | can be converted to losslessly, we can continue the conversion to a direct call. llvm-svn: 27880
* - Added support to turn "vector clear elements", e.g. pand V, <-1, -1, 0, -1>Evan Cheng2006-04-202-77/+232
| | | | | | | | to a vector shuffle. - VECTOR_SHUFFLE lowering change in preparation for more efficient codegen of vector shuffle with zero (or any splat) vector. llvm-svn: 27875
* Turn a VAND into a VECTOR_SHUFFLE is applicable.Evan Cheng2006-04-201-1/+64
| | | | | | | | DAG combiner can turn a VAND V, <-1, 0, -1, -1>, i.e. vector clear elements, into a vector shuffle with a zero vector. It only does so when TLI tells it the xform is profitable. llvm-svn: 27874
* Make sure that the new instructions selected have the right type. This fixesChris Lattner2006-04-201-5/+5
| | | | | | CodeGen/PowerPC/2006-04-19-vmaddfp-crash.ll llvm-svn: 27868
* Implement folding of a bunch of binops with undefChris Lattner2006-04-201-0/+46
| | | | llvm-svn: 27863
* Handle v2i64 BUILD_VECTOR custom lowering correctly. v2i64 is a legal type,Evan Cheng2006-04-201-1/+16
| | | | | | | but i64 is not. If possible, change a i64 op to a f64 (e.g. load, constant) and then cast it back. llvm-svn: 27849
* isSplatMask() bug: first element can be an undef.Evan Cheng2006-04-191-6/+18
| | | | llvm-svn: 27847
* Simplify some codeChris Lattner2006-04-191-5/+1
| | | | llvm-svn: 27846
* - Added support to do aribitrary 4 wide shuffle with no more than threeEvan Cheng2006-04-191-7/+54
| | | | | | | instructions. - Fixed a commute vector_shuff bug. llvm-svn: 27845
* Prefer {p}unpack* and mov*dup over {p}shuf* as well.Evan Cheng2006-04-191-3/+13
| | | | llvm-svn: 27844
* Renamed AddedCost to AddedComplexity.Evan Cheng2006-04-192-6/+6
| | | | llvm-svn: 27843
* - Renamed AddedCost to AddedComplexity.Evan Cheng2006-04-191-11/+18
| | | | | | - Added more movhlps and movlhps patterns. llvm-svn: 27842
* Commute vector_shuffle to match more movlhps, movlp{s|d} cases.Evan Cheng2006-04-192-63/+59
| | | | llvm-svn: 27840
* More mov{h|l}p{d|s} patterns.Evan Cheng2006-04-191-21/+26
| | | | llvm-svn: 27836
* - More mov{h|l}ps patterns.Evan Cheng2006-04-191-2/+25
| | | | | | | - Increase cost (complexity) of patterns which match mov{h|l}ps ops. These are preferred over shufps in most cases. llvm-svn: 27835
* Allow "let AddedCost = n in" to increase pattern complexity.Evan Cheng2006-04-192-1/+5
| | | | llvm-svn: 27834
* add a noteChris Lattner2006-04-191-0/+31
| | | | llvm-svn: 27832
* Another simple case type merge case to tryAndrew Lenharth2006-04-191-0/+24
| | | | llvm-svn: 27831
* deal with memchrAndrew Lenharth2006-04-191-0/+7
| | | | llvm-svn: 27830
* friendlier error messageAndrew Lenharth2006-04-191-1/+1
| | | | llvm-svn: 27829
* add a noteChris Lattner2006-04-191-0/+30
| | | | llvm-svn: 27828
* Add a note.Chris Lattner2006-04-191-0/+58
| | | | llvm-svn: 27827
* stupid stuffAndrew Lenharth2006-04-191-3/+7
| | | | llvm-svn: 27821
* I understand now. Shoot.Andrew Lenharth2006-04-181-21/+3
| | | | llvm-svn: 27819
* - PEXTRW cannot take a memory location as its first source operand.Evan Cheng2006-04-182-9/+1
| | | | | | - PINSRWrmi encoding bug. llvm-svn: 27818
* SHUFP{S|D}, PSHUF* encoding bugs. Left out the mask immediate operand.Evan Cheng2006-04-181-5/+5
| | | | llvm-svn: 27817
* Name change for clarity sakeEvan Cheng2006-04-181-9/+9
| | | | llvm-svn: 27816
* Encoding bug: CMPPSrmi, CMPPDrmi dropped operand 2 (condtion immediate).Evan Cheng2006-04-181-2/+2
| | | | llvm-svn: 27815
* Name change for clarity sakeEvan Cheng2006-04-181-4/+4
| | | | llvm-svn: 27814
* Left a pattern outEvan Cheng2006-04-181-0/+4
| | | | llvm-svn: 27813
* llvm.memc* improvements. helps PA a lot in some specmarksAndrew Lenharth2006-04-181-2/+7
| | | | llvm-svn: 27812
* llvm.memc* improvements. helps PA a lot in some specmarksAndrew Lenharth2006-04-181-4/+11
| | | | llvm-svn: 27811
* These are correctly encoded by the JIT. I checked :)Chris Lattner2006-04-181-2/+0
| | | | llvm-svn: 27810
* add a noteChris Lattner2006-04-181-0/+23
| | | | llvm-svn: 27809
* Fix a crash on:Chris Lattner2006-04-181-2/+24
| | | | | | | | | | | void foo2(vector float *A, vector float *B) { vector float C = (vector float)vec_cmpeq(*A, *B); if (!vec_any_eq(*A, *B)) *B = (vector float){0,0,0,0}; *A = C; } llvm-svn: 27808
* Fixed an encoding bug: movd from XMM to R32.Evan Cheng2006-04-181-1/+1
| | | | llvm-svn: 27807
OpenPOWER on IntegriCloud