summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add patterns for matching vnots with bit converted inputs. Most of these willChris Lattner2006-04-151-0/+17
| | | | | | go away when I start using evan's binop type canonicalizer llvm-svn: 27725
* Add a new vnot_conv predicate for matching vnot's where the allones vector isChris Lattner2006-04-151-0/+6
| | | | | | bitconverted from some other type. llvm-svn: 27724
* Make these predicates return true for bit_convert(buildvector)'s as well asChris Lattner2006-04-151-0/+8
| | | | | | buildvectors. llvm-svn: 27723
* More encoding bugsEvan Cheng2006-04-151-8/+8
| | | | llvm-svn: 27722
* pslldrm, psrawrm, etc. encoding bugEvan Cheng2006-04-151-8/+8
| | | | llvm-svn: 27721
* hsubp{s|d} encoding bugEvan Cheng2006-04-151-4/+4
| | | | llvm-svn: 27720
* Silly bugEvan Cheng2006-04-153-18/+11
| | | | llvm-svn: 27719
* Do not use movs{h|l}dup for a shuffle with a single non-undef node.Evan Cheng2006-04-151-2/+14
| | | | llvm-svn: 27718
* significant cleanups to code that uses insert/extractelt heavily. This buildsChris Lattner2006-04-151-0/+126
| | | | | | maximal shuffles out of them where possible. llvm-svn: 27717
* Added SSE (and other) entries to foldMemoryOperand().Evan Cheng2006-04-141-19/+155
| | | | llvm-svn: 27716
* Some clean upEvan Cheng2006-04-141-78/+81
| | | | llvm-svn: 27715
* Allow undef in a shuffle maskChris Lattner2006-04-141-0/+1
| | | | llvm-svn: 27714
* Move these ctors out of lineChris Lattner2006-04-141-0/+13
| | | | llvm-svn: 27713
* These instructions always return a packed vector. Improve the class ↵Chris Lattner2006-04-141-14/+15
| | | | | | definitions to expose this fact. llvm-svn: 27712
* Last few SSE3 intrinsics.Evan Cheng2006-04-144-32/+215
| | | | llvm-svn: 27711
* Teach scalarrepl to promote unions of vectors and floats, producingChris Lattner2006-04-141-46/+101
| | | | | | | insert/extractelement operations. This implements Transforms/ScalarRepl/vector_promote.ll llvm-svn: 27710
* New testcase, checking to see we can turn this code:Chris Lattner2006-04-141-0/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | void test(vector float *F, float f) { vector float G = *F + *F; *((float*)&G) = f; *F = G + G; } void test2(vector float *F, float f) { vector float G = *F + *F; ((float*)&G)[2] = f; *F = G + G; } void test3(vector float *F, float *f) { vector float G = *F + *F; *f = ((float*)&G)[2]; } void test4(vector float *F, float *f) { vector float G = *F + *F; *f = *((float*)&G); } into insert/extract element operations with no memory traffic. llvm-svn: 27709
* Adding back vector instructions to keep in mainline.Tanya Lattner2006-04-141-0/+191
| | | | llvm-svn: 27704
* Removing unimplemented vector instructions from language referrence.Tanya Lattner2006-04-141-191/+0
| | | | llvm-svn: 27703
* Correct the Superclasses list for GlobalVariable and Function to indicateReid Spencer2006-04-141-16/+20
| | | | | | | | that they are "Constant" as they derive from GlobalValue. Also, fix some of the wording where it mentions this. Patch inspired by Nai Xia. llvm-svn: 27701
* Allow an option, -with-externals, to be specified that provides the locationReid Spencer2006-04-141-0/+4
| | | | | | of the external tests. This turns into --with-externals option to configure. llvm-svn: 27700
* Misc. SSE2 intrinsics: clflush, lfench, mfenceEvan Cheng2006-04-142-2/+17
| | | | llvm-svn: 27699
* We were not adjusting the frame size to ensure proper alignment when alloca /Evan Cheng2006-04-141-30/+23
| | | | | | | | vla are present in the function. This causes a crash when a leaf function allocates space on the stack used to store / load with 128-bit SSE instructions. llvm-svn: 27698
* New entryEvan Cheng2006-04-141-0/+5
| | | | llvm-svn: 27697
* Don't print out the install command for Intrinsics.gen unless VERBOSE mode.Reid Spencer2006-04-141-1/+2
| | | | llvm-svn: 27696
* Make this assertion betterChris Lattner2006-04-141-1/+1
| | | | llvm-svn: 27695
* Force a specific config, because this test fails in certain configs otherwise.Chris Lattner2006-04-141-1/+1
| | | | llvm-svn: 27694
* Move the rest of the PPCTargetLowering::LowerOperation cases out intoChris Lattner2006-04-141-468/+529
| | | | | | separate functions, for simplicity and code clarity. llvm-svn: 27693
* Pull the VECTOR_SHUFFLE and BUILD_VECTOR lowering code out into separateChris Lattner2006-04-141-147/+155
| | | | | | functions, which makes the code much cleaner :) llvm-svn: 27692
* Implement value #'ing for vector operations, implementingChris Lattner2006-04-141-32/+38
| | | | | | Regression/Transforms/GCSE/vectorops.ll llvm-svn: 27691
* new testcase, vector operations should be CSE'dChris Lattner2006-04-141-0/+26
| | | | llvm-svn: 27690
* Remove this test, there is no need to test GCC's bugsChris Lattner2006-04-141-13/+0
| | | | llvm-svn: 27689
* Ahem. HEAD -> 1.8cvs not 1.7 (I'm an idiot).Reid Spencer2006-04-142-10/+10
| | | | llvm-svn: 27687
* remove the "cvs" part of the version number for the release branch.Reid Spencer2006-04-142-10/+10
| | | | llvm-svn: 27686
* pcmpeq* and pcmpgt* intrinsics.Evan Cheng2006-04-142-2/+90
| | | | llvm-svn: 27685
* psll*, psrl*, and psra* intrinsics.Evan Cheng2006-04-142-1/+123
| | | | llvm-svn: 27684
* Remove the .cvsignore file so this directory can be pruned.Reid Spencer2006-04-131-1/+0
| | | | llvm-svn: 27683
* Remove .cvsignore so that this directory can be pruned.Reid Spencer2006-04-131-2/+0
| | | | llvm-svn: 27682
* My addition of the xfail marker threw off the line #. move it.Chris Lattner2006-04-131-1/+3
| | | | llvm-svn: 27678
* Use quotes properly so that the possibility of a null variable set isReid Spencer2006-04-131-4/+4
| | | | | | | | | | | | | eliminated. This can happen, for example, if LLVM is configured without llvm-gcc in which case things like LLVMGCC_VERSION will be empty. In such cases, deja-gnu fails with: can't read "llvmgcc_version": no such variable because it sees: set llvmgcc_version instead of: set llvmgcc_version "" llvm-svn: 27676
* from the linux kernelAndrew Lenharth2006-04-131-0/+597
| | | | llvm-svn: 27674
* Fix this regex to match what llvmgcc4 produces alsoChris Lattner2006-04-131-1/+1
| | | | llvm-svn: 27673
* Handle some kernel code than ends in [0 x sbyte]. I think this is safeAndrew Lenharth2006-04-131-2/+11
| | | | llvm-svn: 27672
* Expand some code with temporary variables to rid ourselves of the warningReid Spencer2006-04-131-7/+21
| | | | | | about "dereferencing type-punned pointer will break strict-aliasing rules" llvm-svn: 27671
* Fix an incorrect prototype for this intrinsic, fixingChris Lattner2006-04-131-1/+1
| | | | | | CFrontend/2003-08-18-SigSetJmp.c with llvm-gcc3. This is part of PR733. llvm-svn: 27670
* Try xfailing thisChris Lattner2006-04-131-1/+3
| | | | llvm-svn: 27669
* Doh. PANDrm, etc. are not commutable.Evan Cheng2006-04-131-9/+7
| | | | llvm-svn: 27668
* fix this for the more restrictive linkageAndrew Lenharth2006-04-131-2/+2
| | | | llvm-svn: 27667
* These tests are now xfailed for llvmgcc4. This is PR735, unlikely to beChris Lattner2006-04-132-0/+4
| | | | | | resolved before 1.7 :( llvm-svn: 27666
* Only look at .ll files in this directoryChris Lattner2006-04-131-1/+1
| | | | llvm-svn: 27665
OpenPOWER on IntegriCloud