Commit Graph

24216 Commits

Author SHA1 Message Date
Chris Lattner
23405aa73d These casts should turn into gep instructions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27618 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-12 18:07:41 +00:00
Reid Spencer
403d43a1a9 Don't emit useless warning messages.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27617 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-12 17:56:16 +00:00
Chris Lattner
35dd5b0f58 Update adding an intrinsic to describe that you can now just plop it into the
target .td file instead of adding SDNodes etc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27616 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-12 17:42:39 +00:00
Andrew Lenharth
65c1e46ebd make recovering running_Olden data easier when the nightly tester eats the graphs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27615 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-12 17:41:19 +00:00
Chris Lattner
e87192a854 Rename get_VSPLI_elt -> get_VSPLTI_elt
Canonicalize BUILD_VECTOR's that match VSPLTI's into a single type for each
form, eliminating a bunch of Pat patterns in the .td file and allowing us to
CSE stuff more aggressively.  This implements
PowerPC/buildvec_canonicalize.ll:VSPLTI


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27614 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-12 17:37:20 +00:00
Chris Lattner
fd4297fa0f two equivalent vsplti*s in different types should be CSEd.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27613 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-12 17:36:04 +00:00
Evan Cheng
91b740da12 Promote v4i32, v8i16, v16i8 load to v2i64 load.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27612 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-12 17:12:36 +00:00
Chris Lattner
c010c13f36 Rename this file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27611 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-12 17:01:11 +00:00
Chris Lattner
88d3c24196 Make this test more interesting by checking that the 0.0 used to implement vector fmul gets cse'd also.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27610 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-12 16:57:39 +00:00
Chris Lattner
2b1c3258d6 Ensure that zero vectors are always v4i32, which forces them to CSE with
each other.  This implements CodeGen/PowerPC/vxor-canonicalize.ll


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27609 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-12 16:53:28 +00:00
Chris Lattner
8e7401e52f new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27608 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-12 16:49:16 +00:00
Reid Spencer
ace44dbbab Make sure both member variables are initialized in the default constructor
for SDOperand. This gets rid of numerous warnings in lib/CodeGen and
lib/Target when compiled with GCC 4.0.2


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27607 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-12 16:44:15 +00:00
Evan Cheng
41f6cbbeb2 Vector type promotion for ISD::LOAD and ISD::SELECT
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27606 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-12 16:33:18 +00:00
Chris Lattner
b878151b1e Provide a default impl of LowerArguments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27605 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-12 16:21:12 +00:00
Chris Lattner
fdfded5588 Implement support for the formal_arguments node. To get this, targets shouldcustom legalize it and remove their XXXTargetLowering::LowerArguments overload
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27604 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-12 16:20:43 +00:00
Evan Cheng
d03db7a36c Various SSE2 conversion intrinsics
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27603 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-12 05:20:24 +00:00
Chris Lattner
9d956250f5 Don't memoize vloads in the load map! Don't memoize them anywhere here, let
getNode do it.  This fixes CodeGen/Generic/2006-04-11-vecload.ll


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27602 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-12 03:25:41 +00:00
Chris Lattner
3678dbf69d new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27601 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-12 03:24:46 +00:00
Reid Spencer
5ff0dc790c Remove extraneous building in target dist-check. There is no reason that
a distribution should need to be able to make a distribution so eliminate
the "make dist" from the list of targets attempted.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27600 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-12 03:07:02 +00:00
Evan Cheng
397edeff50 Added __builtin_ia32_storelv4si, __builtin_ia32_movqv4si,
__builtin_ia32_loadlv4si, __builtin_ia32_loaddqu, __builtin_ia32_storedqu.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27599 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 22:28:25 +00:00
Reid Spencer
852239c20a Don't overload anchor names, silly browser's can't handle it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27598 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 22:02:18 +00:00
Reid Spencer
2425e4c4c9 Add the contents of my email about distribution targets as a new section.
Attribute John as an author.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27597 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 21:59:37 +00:00
Chris Lattner
681ee1c1c3 new dag node
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27596 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 21:30:42 +00:00
John Criswell
fe48c80bf7 First pass over Reid's document.
Changed the order of operations so that more of the fine tuning is
performed in the release branch.  This should free up mainline sooner to
resume development.
Removed information on the special release Makefile targets as I've never
used them for a release; Tanya is investigating their integration, and they
can be re-added if she uses them.
Added an outline for building the LLVM GCC binary distributions.  I will
be filling that section out later (but before the 1.7 release).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27595 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 20:24:28 +00:00
Nate Begeman
218629813a Fix SingleSource/UnitTests/Vector/sumarray-dbl
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27594 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 19:44:43 +00:00
Nate Begeman
030514cd96 Fix PR727, correctly handling large stack aligments on ppc
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27593 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 19:29:21 +00:00
Chris Lattner
95c7570f32 we have a shuffle instr, add an example.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27592 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 18:47:03 +00:00
Evan Cheng
df3c33c57e gcc lower SSE prefetch into generic prefetch intrinsic. Need to add support
later.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27591 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 18:04:57 +00:00
Evan Cheng
135c6a9d83 Misc. intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27590 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 17:35:57 +00:00
Jim Laskey
1e83c6f5f1 Update credibility.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27589 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 08:16:45 +00:00
Jim Laskey
52fa2449c9 Suppress debug label when not debug.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27588 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 08:11:53 +00:00
Evan Cheng
fcf5e21b96 movnt* and maskmovdqu intrinsics
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27587 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 06:57:30 +00:00
Evan Cheng
98f8aeb45f Only get Tmp2 for cases where number of operands is > 1. Fixed return void.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27586 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 06:33:39 +00:00
Reid Spencer
a5bbbcea44 Fix an anchor.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27585 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 06:22:15 +00:00
Reid Spencer
1a2e110470 Flesh out the documentation a little bit more.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27584 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 06:21:25 +00:00
Reid Spencer
5f2090ce5c Update my entry.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27583 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 05:48:40 +00:00
Nate Begeman
e5ce847924 update my credits entry per clattner's request!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27582 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 05:47:45 +00:00
Jeff Cohen
3546bd2d36 Keep Visual Studio happy.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27581 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 02:01:22 +00:00
Chris Lattner
b49e52c7e2 add some todos
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27580 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 02:00:08 +00:00
Chris Lattner
bee9836c0f Vector function results go into V2 according to GCC. The darwin ABI doc
doesn't say where they go :-/


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27579 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 01:38:39 +00:00
Chris Lattner
f87324e44d Add basic support for legalizing returns of vectors
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27578 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 01:31:51 +00:00
Chris Lattner
06c24350a9 Move some return-handling code from lowerarguments to the ISD::RET handling stuff.
No functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27577 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 01:21:43 +00:00
Chris Lattner
347d9d6136 Add helper methods.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27576 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 01:09:25 +00:00
Evan Cheng
d6d1cbd692 Added support for _mm_move_ss and _mm_move_sd.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27575 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-11 00:19:04 +00:00
Jim Laskey
1069fbdd2f Use existing information.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27574 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-10 23:09:19 +00:00
Chris Lattner
389a6f58f7 Implement vec_shuffle.ll:test3
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27573 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-10 23:06:36 +00:00
Chris Lattner
0bb1681337 new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27572 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-10 23:06:18 +00:00
Chris Lattner
a844fc4cb0 Implement InstCombine/vec_shuffle.ll:test[12]
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27571 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-10 22:45:52 +00:00
Chris Lattner
7205684fa5 New testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27570 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-10 22:45:37 +00:00
Evan Cheng
3d60df480a Remove some bogus patterns; clean up.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27569 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-10 22:35:16 +00:00