aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2006-03-21These targets don't support EXTRACT_VECTOR_ELT, though, in time, X86 will.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26930 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-21Don't forget to promote xform function to an explicit node for def : Pat<>Evan Cheng
patterns. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26929 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-21add some trivial support for extractelement.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26928 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-21add some nodes for extractelementChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26927 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-21Don't emit pseudo instructions!Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26926 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-21Add a hacky workaround for crashes due to vectors live across blocks.Chris Lattner
Note that this code won't work for vectors that aren't legal on the target. Improvements coming. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26925 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-21Update readmeNate Begeman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26924 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-21Add an integer splat testChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26923 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-21Print absolute memory references like this:Chris Lattner
lwz r2, 8(0) instead of this: lwz r2, 8(r0) This fixes the llc/llc-beta failures on PPC last night. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26922 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-21Combine 2 entriesEvan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26921 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-21Add a note about x86 register coallescingEvan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26920 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-21- Remove scalar to vector pseudo ops. They are just wrong.Evan Cheng
- Handle FR32 to VR128:v4f32 and FR64 to VR128:v2f64 with aliases of MOVAPS and MOVAPD. Mark them as move instructions and *hope* they will be deleted. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26919 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-21minor code simplificationChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26918 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-21With Evan's latest tblgen patch, this code is obsolete, thanks Evan!Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26917 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-21Cause the various warnings list to be generated via a <ul> list withReid Spencer
text enclosed in <tt>. This ensures that (a) the text is in a fixed width font (to indicated generated text) and (b) the text wraps without causing the page width to be extended. The main result of this is that the report will wrap to conform to the window size in which it is displayed instead of having a very wide length if a warning message is long. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26916 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-21Document ENABLE_ASSERTIONS=1Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26915 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-21Enable assertions to be enabled in release builds by building withChris Lattner
make ENABLE_OPTIMIZED=1 ENABLE_ASSERTIONS=1 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26914 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-21When codegen'ing vector MUL using VFMADD, *add* the 0, don't *mul* the 0.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26913 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-21minor noteChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26912 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-21x86 ISD::SCALAR_TO_VECTOR support.Evan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26911 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-21Junk unused vector register classes.Evan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26910 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20The node wrapped in PatLeaf<> should be treated as a leaf even if it isn'tEvan Cheng
one, i.e. don't select it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26909 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20Handle constant addresses more efficiently, folding the low bits into theChris Lattner
disp field of the load/store if possible. This compiles CodeGen/PowerPC/load-constant-addr.ll to: _test: lis r2, 2838 lfs f1, 26848(r2) blr instead of: _test: lis r2, 2838 ori r2, r2, 26848 lfs f1, 0(r2) blr git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26908 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20remove dead variableChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26907 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20new testcaseChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26906 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20Move some common data structures between dom and pdom into the base classNate Begeman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26905 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20Fix a couple of bugs in permute/splat generate, thanks to Nate for actuallyChris Lattner
figuring these out! :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26904 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20Option -enable-x86-lsr has been removedEvan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26903 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20reenable this hack, the tblgen version isn't quite readyChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26902 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20Fix the pattern for VADDUWM, add i32 splatChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26901 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20Use tblgen'd VECTOR_SHUFFLE selection code.Evan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26900 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20It should be ok for a xform output type to be different from input type.Evan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26899 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20Add support for generating vspltw, instead of a vperm instruction with aChris Lattner
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
2006-03-20Implement PPC::isSplatShuffleMask and PPC::getVSPLTImmediate.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26897 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20fix duplicate definition errorsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26896 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20Add a build_vector nodeChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26895 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20Check in some intermediate code that adds a skeleton for matching vsplt*Chris Lattner
instructions git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26894 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20Move a few things around.Evan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26893 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20Copy matching pattern's output type info to instruction result pattern.Evan Cheng
The instruction patterns do not contain enough information to resolve the exact type of the destination if it of a generic vector type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26892 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20add vector_shuffleChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26891 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20Add a new SDTCisIntVectorOfSameSize type constraintChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26890 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20fix typoChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26889 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20add vsplat instructions, fix sched description for vpermChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26888 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20Custom lower arbitrary VECTOR_SHUFFLE's to VPERM.Chris Lattner
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
2006-03-20Claim to have v16i8 for perm masksChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26886 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20If a target supports splatting with SHUFFLE_VECTOR, lower to it from ↵Chris Lattner
BUILD_VECTOR(x,x,x,x) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26885 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20TargetData doesn't know the alignment of vectors :(Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26884 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20add the vperm instructionChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26883 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20Add some helper methodsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26882 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-20Add another helperChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26881 91177308-0d34-0410-b5e6-96231b3b80d8