aboutsummaryrefslogtreecommitdiffstats
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
* Fix a couple of bugs in permute/splat generate, thanks to Nate for actuallyChris Lattner2006-03-202-3/+1
| | | | | | | figuring these out! :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26904 91177308-0d34-0410-b5e6-96231b3b80d8
* reenable this hack, the tblgen version isn't quite readyChris Lattner2006-03-201-0/+16
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26902 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix the pattern for VADDUWM, add i32 splatChris Lattner2006-03-201-1/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26901 91177308-0d34-0410-b5e6-96231b3b80d8
* Use tblgen'd VECTOR_SHUFFLE selection code.Evan Cheng2006-03-202-19/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26900 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for generating vspltw, instead of a vperm instruction with aChris Lattner2006-03-203-13/+41
| | | | | | | | | constant pool load. This generates significantly nicer code for splats. When tblgen gets bugfixed, we can remove the custom selection code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26898 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement PPC::isSplatShuffleMask and PPC::getVSPLTImmediate.Chris Lattner2006-03-201-2/+13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26897 91177308-0d34-0410-b5e6-96231b3b80d8
* fix duplicate definition errorsChris Lattner2006-03-202-2/+20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26896 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a build_vector nodeChris Lattner2006-03-202-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26895 91177308-0d34-0410-b5e6-96231b3b80d8
* Check in some intermediate code that adds a skeleton for matching vsplt*Chris Lattner2006-03-202-4/+28
| | | | | | | instructions git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26894 91177308-0d34-0410-b5e6-96231b3b80d8
* Move a few things around.Evan Cheng2006-03-202-13/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26893 91177308-0d34-0410-b5e6-96231b3b80d8
* add vector_shuffleChris Lattner2006-03-201-0/+16
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26891 91177308-0d34-0410-b5e6-96231b3b80d8
* fix typoChris Lattner2006-03-201-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26889 91177308-0d34-0410-b5e6-96231b3b80d8
* add vsplat instructions, fix sched description for vpermChris Lattner2006-03-201-1/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26888 91177308-0d34-0410-b5e6-96231b3b80d8
* Custom lower arbitrary VECTOR_SHUFFLE's to VPERM.Chris Lattner2006-03-203-15/+60
| | | | | | | | TODO: leave specific ones as VECTOR_SHUFFLE's and turn them into specialized operations like vsplt* git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26887 91177308-0d34-0410-b5e6-96231b3b80d8
* Claim to have v16i8 for perm masksChris Lattner2006-03-201-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26886 91177308-0d34-0410-b5e6-96231b3b80d8
* If a target supports splatting with SHUFFLE_VECTOR, lower to it from ↵Chris Lattner2006-03-201-4/+41
| | | | | | BUILD_VECTOR(x,x,x,x) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26885 91177308-0d34-0410-b5e6-96231b3b80d8
* TargetData doesn't know the alignment of vectors :(Chris Lattner2006-03-201-1/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26884 91177308-0d34-0410-b5e6-96231b3b80d8
* add the vperm instructionChris Lattner2006-03-201-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26883 91177308-0d34-0410-b5e6-96231b3b80d8
* Add very basic support for VECTOR_SHUFFLEChris Lattner2006-03-191-1/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26880 91177308-0d34-0410-b5e6-96231b3b80d8
* add a note with a testcaseChris Lattner2006-03-191-0/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26877 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a note about the MUL -> FMADD vector bug.Chris Lattner2006-03-191-0/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26874 91177308-0d34-0410-b5e6-96231b3b80d8
* Teach cee to propagate through switch statements. This implementsChris Lattner2006-03-191-1/+21
| | | | | | | | | Transforms/CorrelatedExprs/switch.ll Patch contributed by Eric Kidd! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26872 91177308-0d34-0410-b5e6-96231b3b80d8
* Vector undef'sEvan Cheng2006-03-191-0/+21
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26870 91177308-0d34-0410-b5e6-96231b3b80d8
* Custom lower SCALAR_TO_VECTOR into lve*x.Chris Lattner2006-03-193-9/+37
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26868 91177308-0d34-0410-b5e6-96231b3b80d8
* Allow SCALAR_TO_VECTOR to be custom lowered.Chris Lattner2006-03-191-0/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26867 91177308-0d34-0410-b5e6-96231b3b80d8
* Add SCALAR_TO_VECTOR supportChris Lattner2006-03-192-90/+154
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26866 91177308-0d34-0410-b5e6-96231b3b80d8
* PPC doesn't have SCALAR_TO_VECTORChris Lattner2006-03-191-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26865 91177308-0d34-0410-b5e6-96231b3b80d8
* add support for vector undefChris Lattner2006-03-191-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26863 91177308-0d34-0410-b5e6-96231b3b80d8
* Remind us of exit value substitutionEvan Cheng2006-03-191-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26862 91177308-0d34-0410-b5e6-96231b3b80d8
* Turning on LSR by defaultEvan Cheng2006-03-191-6/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26861 91177308-0d34-0410-b5e6-96231b3b80d8
* Remember which tests are hurt by LSR.Evan Cheng2006-03-191-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26860 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't bother storing undef elements of BUILD_VECTOR'sChris Lattner2006-03-191-1/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26858 91177308-0d34-0410-b5e6-96231b3b80d8
* minor fixesChris Lattner2006-03-191-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26857 91177308-0d34-0410-b5e6-96231b3b80d8
* notesChris Lattner2006-03-191-0/+16
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26856 91177308-0d34-0410-b5e6-96231b3b80d8
* we don't use lmw/stmw. When we want them they are easy enough to addChris Lattner2006-03-191-6/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26853 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement expand of BUILD_VECTOR containing variable elements.Chris Lattner2006-03-191-2/+32
| | | | | | | This implements CodeGen/Generic/vector.ll:test_variable_buildvector git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26852 91177308-0d34-0410-b5e6-96231b3b80d8
* fold insertelement(buildvector) -> buildvector if the inserted element # isChris Lattner2006-03-191-0/+42
| | | | | | | a constant. This implements test_constant_insert in CodeGen/Generic/vector.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26851 91177308-0d34-0410-b5e6-96231b3b80d8
* implement basic support for INSERT_VECTOR_ELT.Chris Lattner2006-03-192-73/+97
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26849 91177308-0d34-0410-b5e6-96231b3b80d8
* rename these nodesChris Lattner2006-03-192-12/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26848 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename ConstantVec -> BUILD_VECTOR and VConstant -> VBUILD_VECTOR. ↵Chris Lattner2006-03-193-57/+71
| | | | | | Allow*BUILD_VECTOR to take variable inputs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26847 91177308-0d34-0410-b5e6-96231b3b80d8
* implement vector.ll:test_undefChris Lattner2006-03-192-9/+24
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26845 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix the remaining bugs in the vector expansion rework I commited yesterday.Chris Lattner2006-03-191-4/+5
| | | | | | | This fixes CodeGen/Generic/vector.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26843 91177308-0d34-0410-b5e6-96231b3b80d8
* - Fixed a bogus if condition.Evan Cheng2006-03-181-19/+25
| | | | | | | | - Added more debugging info. - Allow reuse of IV of negative stride. e.g. -4 stride == 2 * iv of -2 stride. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26841 91177308-0d34-0410-b5e6-96231b3b80d8
* Change the structure of lowering vector stuff. Note: This breaks someChris Lattner2006-03-183-214/+318
| | | | | | | things. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26840 91177308-0d34-0410-b5e6-96231b3b80d8
* Use the generic vector register classes VR64 / VR128 rather than V4F32,Evan Cheng2006-03-184-232/+246
| | | | | | | V8I16, etc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26838 91177308-0d34-0410-b5e6-96231b3b80d8
* Sort StrideOrder so we can process the smallest strides first. This allowsEvan Cheng2006-03-181-0/+27
| | | | | | | for more IV reuses. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26837 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix subfic to match subc by default instead of sub so that it is correctlyNate Begeman2006-03-171-2/+2
| | | | | | | cost-modeled as producing a flag. This fixes the test I just added for neg git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26835 91177308-0d34-0410-b5e6-96231b3b80d8
* Darwin should use _setjmp/_longjmp instead of setjmp/longjmp.Evan Cheng2006-03-171-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26833 91177308-0d34-0410-b5e6-96231b3b80d8
* Move some pattern fragments to the right files.Evan Cheng2006-03-173-27/+37
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26831 91177308-0d34-0410-b5e6-96231b3b80d8
* add a couple enum valuesChris Lattner2006-03-171-1/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26830 91177308-0d34-0410-b5e6-96231b3b80d8