Evan Cheng [Tue, 28 Mar 2006 07:01:28 +0000 (07:01 +0000)]
movlps and movlpd should be modeled as two address code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27221
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 28 Mar 2006 06:55:45 +0000 (06:55 +0000)]
Update
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27220
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 28 Mar 2006 06:53:49 +0000 (06:53 +0000)]
Typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27219
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 28 Mar 2006 06:50:32 +0000 (06:50 +0000)]
* Prefer using operation of matching types. e.g unpcklpd rather than movlhps.
* Bug fixes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27218
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 28 Mar 2006 06:40:57 +0000 (06:40 +0000)]
Use movhpd is even better than movlhps.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27217
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Tue, 28 Mar 2006 04:18:18 +0000 (04:18 +0000)]
Fix a couple typos
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27216
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Tue, 28 Mar 2006 04:15:58 +0000 (04:15 +0000)]
Add a few more altivec intrinsics
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27215
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Tue, 28 Mar 2006 04:01:27 +0000 (04:01 +0000)]
Keep Visual Studio informed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27214
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 28 Mar 2006 03:52:36 +0000 (03:52 +0000)]
These don't directly map to gcc intrinsics any more.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27213
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 28 Mar 2006 02:49:12 +0000 (02:49 +0000)]
Added a couple of entries about movhps and movlhps.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27212
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 28 Mar 2006 02:44:05 +0000 (02:44 +0000)]
All unpack cases are now being handled.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27211
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 28 Mar 2006 02:43:26 +0000 (02:43 +0000)]
- Clean up / consoladate various shuffle masks.
- Some misc. bug fixes.
- Use MOVHPDrm to load from m64 to upper half of a XMM register.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27210
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 28 Mar 2006 02:29:37 +0000 (02:29 +0000)]
implement a bunch more intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27209
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 28 Mar 2006 02:28:48 +0000 (02:28 +0000)]
Add some more intrinsics: rotates, fp rounds, and random other fp instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27208
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 28 Mar 2006 01:59:17 +0000 (01:59 +0000)]
getVectorTyppe(MVT::i64, 2) ==> MVT::v2i64.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27207
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 28 Mar 2006 01:49:27 +0000 (01:49 +0000)]
Add lvxl
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27206
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 28 Mar 2006 01:43:22 +0000 (01:43 +0000)]
Use normal lvx for scalar_to_vector instead of lve*x. They do the exact
same thing and we have a dag node for the former.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27205
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Tue, 28 Mar 2006 01:34:14 +0000 (01:34 +0000)]
Regression test for the handling of nulls as arguments to debug intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27204
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Tue, 28 Mar 2006 01:30:18 +0000 (01:30 +0000)]
More bulletproofing of DebugInfoDesc verify.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27203
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 28 Mar 2006 00:41:33 +0000 (00:41 +0000)]
Tblgen doesn't like multiple SDNode<> definitions that map to the sameenum value. Split them into separate enums.
Also, don't emit dynamic checks when we can compute them statically
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27202
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 28 Mar 2006 00:40:33 +0000 (00:40 +0000)]
Tblgen doesn't like multiple SDNode<> definitions that map to the sameenum value. Split them into separate enums.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27201
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 28 Mar 2006 00:39:58 +0000 (00:39 +0000)]
Model unpack lower and interleave as vector_shuffle so we can lower the
intrinsics as such.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27200
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 28 Mar 2006 00:39:06 +0000 (00:39 +0000)]
Tblgen doesn't like multiple SDNode<> definitions that map to the same
enum value. Split them into separate enums.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27199
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 28 Mar 2006 00:15:44 +0000 (00:15 +0000)]
Reenable pointer intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27198
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 28 Mar 2006 00:15:00 +0000 (00:15 +0000)]
Only compute intrinsic valuetypes when in a target .td file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27197
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 28 Mar 2006 00:03:08 +0000 (00:03 +0000)]
revert this, it breaks things.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27196
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 28 Mar 2006 00:02:52 +0000 (00:02 +0000)]
revert this, it breaks things
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27195
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Mon, 27 Mar 2006 23:39:58 +0000 (23:39 +0000)]
If adding a link to a collapsed, node, ignore offset.
Fixes 2006-03-27-LinkedCollapsed.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27194
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Mon, 27 Mar 2006 23:38:48 +0000 (23:38 +0000)]
Adding links to a node collapsed during type merging crashes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27193
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Mon, 27 Mar 2006 23:31:10 +0000 (23:31 +0000)]
Reactivate llvm.dbg.declare.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27192
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Mon, 27 Mar 2006 23:30:18 +0000 (23:30 +0000)]
Should not remove casts from variable's alloca.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27191
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 27 Mar 2006 22:49:46 +0000 (22:49 +0000)]
Add support for intrinsics with pointer arguments in target .td files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27190
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 27 Mar 2006 22:49:07 +0000 (22:49 +0000)]
Add some missing template specializations for autodereferencing User.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27189
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 27 Mar 2006 22:48:18 +0000 (22:48 +0000)]
Add support for decoding iPTR to the right pointer type.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27188
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 27 Mar 2006 22:48:00 +0000 (22:48 +0000)]
add a new iPTR ValueType for tblgen use
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27187
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 27 Mar 2006 22:38:39 +0000 (22:38 +0000)]
Divirge from the GCC specification of the load/store intrinsics: only take
one pointer operand, instead of a pointer and an offset. The FE will lower
to this canonicalized form.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27186
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 27 Mar 2006 22:21:18 +0000 (22:21 +0000)]
Print error messages like this:
tblgen: In STVEBX: Intrinsic 'llvm.ppc.altivec.stvebx' expects 3 operands, not 2 operands!
instead of like this:
tblgen: In STVEBX: Intrinsic 'intrinsic_void expects 3 operands, not 2 operands!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27185
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 27 Mar 2006 22:07:12 +0000 (22:07 +0000)]
fix spelling :(
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27184
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 27 Mar 2006 22:05:34 +0000 (22:05 +0000)]
add some more intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27183
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 27 Mar 2006 21:36:03 +0000 (21:36 +0000)]
Disable dbg_declare, it currently breaks the CFE build
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27182
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 27 Mar 2006 20:28:29 +0000 (20:28 +0000)]
Fix legalization of intrinsics with chain and result values
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27181
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Mon, 27 Mar 2006 20:18:45 +0000 (20:18 +0000)]
Translate llvm target registers to dwarf register numbers properly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27180
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Mon, 27 Mar 2006 19:46:38 +0000 (19:46 +0000)]
Misunderstanding.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27179
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Mon, 27 Mar 2006 19:43:08 +0000 (19:43 +0000)]
Typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27178
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Mon, 27 Mar 2006 19:33:35 +0000 (19:33 +0000)]
Clarity.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27177
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Mon, 27 Mar 2006 19:09:44 +0000 (19:09 +0000)]
Adding other platforms.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27176
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Mon, 27 Mar 2006 18:41:06 +0000 (18:41 +0000)]
Add note for Mac OS X developers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27175
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 27 Mar 2006 16:52:45 +0000 (16:52 +0000)]
unbreak the build
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27174
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 27 Mar 2006 16:10:59 +0000 (16:10 +0000)]
Unbreak the build on non-apple compilers :-(
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27173
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 27 Mar 2006 08:23:12 +0000 (08:23 +0000)]
Intrinsics naming convention change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27172
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 27 Mar 2006 08:10:26 +0000 (08:10 +0000)]
Try again
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27171
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 27 Mar 2006 07:41:00 +0000 (07:41 +0000)]
Add a bunch of notes from my journey thus far.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27170
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 27 Mar 2006 07:26:17 +0000 (07:26 +0000)]
Incorrect check for FP all one's
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27169
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 27 Mar 2006 07:04:16 +0000 (07:04 +0000)]
Split out altivec notes into their own README
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27168
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 27 Mar 2006 07:00:16 +0000 (07:00 +0000)]
Use pcmpeq to generate vector of all ones.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27167
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 27 Mar 2006 06:59:32 +0000 (06:59 +0000)]
Changed isBuildVectorAllOnesInteger to isBuildVectorAllOnes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27166
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 27 Mar 2006 06:58:47 +0000 (06:58 +0000)]
Change isBuildVectorAllOnesInteger to isBuildVectorAllOnes. Also check for
floating point cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27165
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 27 Mar 2006 06:45:25 +0000 (06:45 +0000)]
Instead of printing "INTRINSIC" on intrinsic node, print the intrinsic name.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27164
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 27 Mar 2006 05:50:18 +0000 (05:50 +0000)]
teach the inliner to work with packed constants
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27161
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 27 Mar 2006 03:34:17 +0000 (03:34 +0000)]
Fix the JIT encoding of VSEL
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27160
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 27 Mar 2006 03:28:57 +0000 (03:28 +0000)]
Fix the JIT encoding of VSPLTI*
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27159
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Mon, 27 Mar 2006 01:51:47 +0000 (01:51 +0000)]
Pass llvm/test/Regression/CodeGen/Generic/debug-info.ll.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27158
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Mon, 27 Mar 2006 01:32:24 +0000 (01:32 +0000)]
SelectionDAGISel can now natively handle Switch instructions, in the same
manner that the LowerSwitch LLVM to LLVM pass does: emitting a binary
search tree of basic blocks. The new approach has several advantages:
it is faster, it generates significantly smaller code in many cases, and
it paves the way for implementing dense switch tables as a jump table by
handling switches directly in the instruction selector.
This functionality is currently only enabled on x86, but should be safe for
every target. In anticipation of making it the default, the cfg is now
properly updated in the x86, ppc, and sparc select lowering code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27156
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Sun, 26 Mar 2006 22:46:27 +0000 (22:46 +0000)]
Bullet proof against undefined args produced by upgrading ols-style debug info.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27155
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Sun, 26 Mar 2006 22:45:20 +0000 (22:45 +0000)]
How to be dumb on $5/day. Need a tri-state to track valid debug descriptors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27154
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 26 Mar 2006 22:38:43 +0000 (22:38 +0000)]
add vsel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27153
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sun, 26 Mar 2006 19:19:27 +0000 (19:19 +0000)]
Readme note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27152
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 26 Mar 2006 10:06:40 +0000 (10:06 +0000)]
Codegen vector predicate compares.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27151
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sun, 26 Mar 2006 09:53:12 +0000 (09:53 +0000)]
Remove X86:isZeroVector, use ISD::isBuildVectorAllZeros instead; some fixes / cleanups
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27150
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sun, 26 Mar 2006 09:52:32 +0000 (09:52 +0000)]
Remove PPC:isZeroVector, use ISD::isBuildVectorAllZeros instead
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27149
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sun, 26 Mar 2006 09:51:39 +0000 (09:51 +0000)]
Add immAllZerosV helper
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27148
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sun, 26 Mar 2006 09:50:58 +0000 (09:50 +0000)]
Add ISD::isBuildVectorAllZeros predicate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27147
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 26 Mar 2006 09:12:51 +0000 (09:12 +0000)]
Allow targets to custom lower their own intrinsics if desired.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27146
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 26 Mar 2006 07:50:25 +0000 (07:50 +0000)]
Add predicate comparison intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27145
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 26 Mar 2006 07:45:48 +0000 (07:45 +0000)]
Update dependencies to reflect split of the Intrinsics.td file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27144
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 26 Mar 2006 04:57:17 +0000 (04:57 +0000)]
Add all of the altivec comparison instructions. Add patterns for the
non-predicate altivec compare intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27143
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 26 Mar 2006 02:39:02 +0000 (02:39 +0000)]
Add and 8/16-bit adds, add all integer subtracts, add saturating subtract
intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27142
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 26 Mar 2006 02:37:19 +0000 (02:37 +0000)]
Split the PPC and X86 intrinsics out to their own files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27141
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 26 Mar 2006 02:34:07 +0000 (02:34 +0000)]
Add saturating subtracts, non-predicate compares, and some other random
intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27140
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 26 Mar 2006 00:41:48 +0000 (00:41 +0000)]
implement the vsldoi intrinsic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27139
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 26 Mar 2006 00:25:43 +0000 (00:25 +0000)]
add int_ppc_altivec_vsldoi intrinsic
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27138
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 23:12:47 +0000 (23:12 +0000)]
Correct the vandc testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27137
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 23:10:40 +0000 (23:10 +0000)]
fix the pattern for vandc, it's NOT vnand
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27136
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 23:05:29 +0000 (23:05 +0000)]
add patterns for VANDC/VNOR, implementing
CodeGen/PowerPC/eqv-andc-orc-nor.ll:VNOR/VANDC
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27135
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 23:04:34 +0000 (23:04 +0000)]
new testcases
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27134
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 23:00:56 +0000 (23:00 +0000)]
Add some comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27133
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 23:00:08 +0000 (23:00 +0000)]
add a vnot helper node for matching 'not' on vectors
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27132
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 22:59:28 +0000 (22:59 +0000)]
Fix a bug in ISD::isBuildVectorAllOnesInteger that caused it to always return
false
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27131
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 22:57:01 +0000 (22:57 +0000)]
Implement the ISD::isBuildVectorAllOnesInteger predicate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27130
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 22:56:35 +0000 (22:56 +0000)]
Add a predicate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27129
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 22:19:00 +0000 (22:19 +0000)]
Don't call SimplifyDemandedBits on vectors
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27128
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 22:16:05 +0000 (22:16 +0000)]
Add some logical operations
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27127
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 22:12:44 +0000 (22:12 +0000)]
Add a missing check which cause an invalid .td file to crash tblgen
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27126
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 21:58:26 +0000 (21:58 +0000)]
Don't crash on packed logical ops
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27125
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 21:54:21 +0000 (21:54 +0000)]
Teach BinaryOperator::createNot to work with packed integer types
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27124
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Sat, 25 Mar 2006 18:42:45 +0000 (18:42 +0000)]
Unused function - easier to throw away than fix.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27123
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Sat, 25 Mar 2006 18:40:47 +0000 (18:40 +0000)]
Cast instruction not inserted into basic block.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27122
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 25 Mar 2006 09:48:14 +0000 (09:48 +0000)]
Add a BUILD_VECTOR with unpack and interleave testcase.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27121
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 25 Mar 2006 09:45:48 +0000 (09:45 +0000)]
Added missing (any_extend (load ...)) patterns.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27120
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 25 Mar 2006 09:37:23 +0000 (09:37 +0000)]
Build arbitrary vector with more than 2 distinct scalar elements with a
series of unpack and interleave ops.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27119
91177308-0d34-0410-b5e6-
96231b3b80d8