Commit Graph

24303 Commits

Author SHA1 Message Date
Evan Cheng
39623daef6 - Added support to turn "vector clear elements", e.g. pand V, <-1, -1, 0, -1>
to a vector shuffle.
- VECTOR_SHUFFLE lowering change in preparation for more efficient codegen
of vector shuffle with zero (or any splat) vector.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27875 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 08:58:49 +00:00
Evan Cheng
44f1f09b4e Turn a VAND into a VECTOR_SHUFFLE is applicable.
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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27874 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 08:56:16 +00:00
Evan Cheng
c313c66a88 Added a virtual method isVectorClearMaskLegal to TLI. It is similar to
isShuffleMaskLegal, used to determine if it makes sense to turn a
"vector clear" (e.g. pand V, <0, -1, 0, -1> to a shuffle of the vector and
a zero vector.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27873 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 08:54:13 +00:00
Evan Cheng
7afbb73632 Added a test case for , e.g. xform pand <0, 0, -1, -1> to a shuffle.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27872 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 08:51:03 +00:00
Evan Cheng
22ad8d991c Added a movhlps, movlhps test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27871 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 08:47:47 +00:00
Chris Lattner
6868153123 Don't hardcode in 1.5 for the website, just use 'CVS'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27870 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 06:24:16 +00:00
Chris Lattner
6c787d83d3 This is old, out of date, and isn't linked to by anything.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27869 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 06:15:48 +00:00
Chris Lattner
0231007269 Make sure that the new instructions selected have the right type. This fixes
CodeGen/PowerPC/2006-04-19-vmaddfp-crash.ll


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27868 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 05:58:10 +00:00
Chris Lattner
0d4603b801 New testcase for a codegen crash
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27867 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 05:57:43 +00:00
Tanya Lattner
84b71aee30 Changing domain name
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27865 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 05:51:53 +00:00
Chris Lattner
62b5772959 Implement folding of a bunch of binops with undef
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27863 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 05:39:12 +00:00
Chris Lattner
1ef81aff91 Update llvmgcc4 tarball names
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27861 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 05:08:23 +00:00
Tanya Lattner
fcccd6bd17 Removed listing of llvm releases after 1.4, and said "1.4 and newer"
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27860 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 05:05:12 +00:00
Tanya Lattner
2b87362a71 Made warning red.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27859 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 04:57:19 +00:00
Tanya Lattner
d006d3a17a Document is out of date.. added warning and link to llvm-config.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27858 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 04:55:50 +00:00
Tanya Lattner
827a1d90a7 Fixed up comment on xfail for llvmgcc version.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27857 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 04:47:55 +00:00
Tanya Lattner
f894d0edf9 Added note about being able to XFAIL based on llvmgcc version.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27856 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 04:45:59 +00:00
Tanya Lattner
b3c11009d0 Removed cvs mirror comment
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27855 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 04:38:16 +00:00
Tanya Lattner
993b980bc8 Minor fixes for the release.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27854 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 04:35:34 +00:00
Chris Lattner
8bb0a6c509 This has been fixed! Thanks Reid.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27853 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 04:24:28 +00:00
Chris Lattner
d3582daa22 Yeah that's right!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27852 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 04:22:06 +00:00
Chris Lattner
31e0aeaa4c Fixes from Tanya
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27851 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 04:01:31 +00:00
Reid Spencer
9d3b814d53 Add in missing #defines for _OpenBSD_ systems.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27850 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 00:18:39 +00:00
Evan Cheng
72cd9a9439 Handle v2i64 BUILD_VECTOR custom lowering correctly. v2i64 is a legal type,
but i64 is not. If possible, change a i64 op to a f64 (e.g. load, constant)
and then cast it back.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27849 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-20 00:11:39 +00:00
Reid Spencer
1014ab4470 Allow OpenBSD to be recognized as a UNIX platform.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27848 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 23:47:16 +00:00
Evan Cheng
94fe5eb14a isSplatMask() bug: first element can be an undef.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27847 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 23:28:59 +00:00
Chris Lattner
89a1b380a4 Simplify some code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27846 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 23:17:50 +00:00
Evan Cheng
80d428c370 - Added support to do aribitrary 4 wide shuffle with no more than three
instructions.
- Fixed a commute vector_shuff bug.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27845 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 22:48:17 +00:00
Evan Cheng
fd111b5be5 Prefer {p}unpack* and mov*dup over {p}shuf* as well.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27844 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 21:15:24 +00:00
Evan Cheng
f5e1dc278b Renamed AddedCost to AddedComplexity.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27843 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 20:38:28 +00:00
Evan Cheng
2dadaea5d2 - Renamed AddedCost to AddedComplexity.
- Added more movhlps and movlhps patterns.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27842 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 20:37:34 +00:00
Evan Cheng
c81d2a041d Rename AddedCost to AddedComplexity.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27841 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 20:36:09 +00:00
Evan Cheng
533a0aa9ba Commute vector_shuffle to match more movlhps, movlp{s|d} cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27840 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 20:35:22 +00:00
Chris Lattner
3a00a3e573 Final piece to get relinked .o files buildable universal on Darwin.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27839 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 18:45:29 +00:00
Chris Lattner
b6f93411e0 Regenerate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27838 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 18:38:19 +00:00
Chris Lattner
806103de15 When on darwin, compiler_flags need to be percolated down to the 'gcc -r'
command line so that relinked .o files can be built universal.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27837 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 18:34:41 +00:00
Evan Cheng
f66a094cac More mov{h|l}p{d|s} patterns.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27836 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 18:20:17 +00:00
Evan Cheng
cc0e98c8ed - More mov{h|l}ps patterns.
- Increase cost (complexity) of patterns which match mov{h|l}ps ops. These
  are preferred over shufps in most cases.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27835 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 18:11:52 +00:00
Evan Cheng
5941320c0d Allow "let AddedCost = n in" to increase pattern complexity.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27834 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 18:07:24 +00:00
Chris Lattner
0c760dc224 Alpha too!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27833 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 17:20:48 +00:00
Chris Lattner
8cc5ffb27f add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27832 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 16:22:38 +00:00
Andrew Lenharth
9df47b5928 Another simple case type merge case to try
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27831 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 15:34:34 +00:00
Andrew Lenharth
613926904f deal with memchr
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27830 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 15:34:02 +00:00
Andrew Lenharth
5e091f3e32 friendlier error message
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27829 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 15:33:35 +00:00
Chris Lattner
bf9b3716ed add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27828 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 05:55:06 +00:00
Chris Lattner
ff5cdc2ccd Add a note.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27827 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 05:53:27 +00:00
Chris Lattner
f4b575b381 grammaro
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27826 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 04:21:57 +00:00
Chris Lattner
657408b4f3 Fix a bug owen noticed
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27825 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 04:21:16 +00:00
Chris Lattner
cf797e9205 Change wording
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27824 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 04:12:01 +00:00
Chris Lattner
c71173a2f7 add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27823 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-19 04:05:21 +00:00