oota-llvm.git
18 years agoadd a note
Chris Lattner [Wed, 29 Mar 2006 00:24:13 +0000 (00:24 +0000)]
add a note

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27243 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agonew testcase
Chris Lattner [Wed, 29 Mar 2006 00:12:08 +0000 (00:12 +0000)]
new testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27242 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoBug fixes: handle constantexpr insert/extract element operations
Chris Lattner [Wed, 29 Mar 2006 00:11:43 +0000 (00:11 +0000)]
Bug fixes: handle constantexpr insert/extract element operations
Handle constantpacked vectors with constantexpr elements.

This fixes CodeGen/Generic/vector-constantexpr.ll

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27241 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdded aliases to scalar SSE instructions, e.g. addss, to match x86 intrinsics.
Evan Cheng [Tue, 28 Mar 2006 23:51:43 +0000 (23:51 +0000)]
Added aliases to scalar SSE instructions, e.g. addss, to match x86 intrinsics.
The source operands type are v4sf with upper bits passes through.
Added matching code for these.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27240 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFixing buggy code.
Evan Cheng [Tue, 28 Mar 2006 23:41:33 +0000 (23:41 +0000)]
Fixing buggy code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27239 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoDon't sort the names before outputing the intrinsic name table. It causes a
Evan Cheng [Tue, 28 Mar 2006 22:25:56 +0000 (22:25 +0000)]
Don't sort the names before outputing the intrinsic name table. It causes a
mismatch against the enum table.
This is a part of Sabre's master plan to drive me nuts with subtle bugs that
happens to only affect x86 be. :-)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27237 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoWhen building a VVECTOR_SHUFFLE node from extract_element operations, make
Chris Lattner [Tue, 28 Mar 2006 22:19:47 +0000 (22:19 +0000)]
When building a VVECTOR_SHUFFLE node from extract_element operations, make
sure to build it as SHUFFLE(X, undef, mask), not SHUFFLE(X, X, mask).

The later is not canonical form, and prevents the PPC splat pattern from
matching.  For a particular splat, we go from generating this:

li r10, lo16(LCPI1_0)
lis r11, ha16(LCPI1_0)
lvx v3, r11, r10
vperm v3, v2, v2, v3

to generating:

vspltw v3, v2, 3

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27236 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoCanonicalize VECTOR_SHUFFLE(X, X, Y) -> VECTOR_SHUFFLE(X,undef,Y')
Chris Lattner [Tue, 28 Mar 2006 22:11:53 +0000 (22:11 +0000)]
Canonicalize VECTOR_SHUFFLE(X, X, Y) -> VECTOR_SHUFFLE(X,undef,Y')

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27235 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agonew testcase
Chris Lattner [Tue, 28 Mar 2006 20:32:12 +0000 (20:32 +0000)]
new testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27234 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoTurn a series of extract_element's feeding a build_vector into a
Chris Lattner [Tue, 28 Mar 2006 20:28:38 +0000 (20:28 +0000)]
Turn a series of extract_element's feeding a build_vector into a
vector_shuffle node.  For this:

void test(__m128 *res, __m128 *A, __m128 *B) {
  *res = _mm_unpacklo_ps(*A, *B);
}

we now produce this code:

_test:
        movl 8(%esp), %eax
        movaps (%eax), %xmm0
        movl 12(%esp), %eax
        unpcklps (%eax), %xmm0
        movl 4(%esp), %eax
        movaps %xmm0, (%eax)
        ret

instead of this:

_test:
        subl $76, %esp
        movl 88(%esp), %eax
        movaps (%eax), %xmm0
        movaps %xmm0, (%esp)
        movaps %xmm0, 32(%esp)
        movss 4(%esp), %xmm0
        movss 32(%esp), %xmm1
        unpcklps %xmm0, %xmm1
        movl 84(%esp), %eax
        movaps (%eax), %xmm0
        movaps %xmm0, 16(%esp)
        movaps %xmm0, 48(%esp)
        movss 20(%esp), %xmm0
        movss 48(%esp), %xmm2
        unpcklps %xmm0, %xmm2
        unpcklps %xmm1, %xmm2
        movl 80(%esp), %eax
        movaps %xmm2, (%eax)
        addl $76, %esp
        ret

GCC produces this (with -fomit-frame-pointer):

_test:
        subl    $12, %esp
        movl    20(%esp), %eax
        movaps  (%eax), %xmm0
        movl    24(%esp), %eax
        unpcklps        (%eax), %xmm0
        movl    16(%esp), %eax
        movaps  %xmm0, (%eax)
        addl    $12, %esp
        ret

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27233 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoTeach Legalize how to pack VVECTOR_SHUFFLE nodes into VECTOR_SHUFFLE nodes.
Chris Lattner [Tue, 28 Mar 2006 20:24:43 +0000 (20:24 +0000)]
Teach Legalize how to pack VVECTOR_SHUFFLE nodes into VECTOR_SHUFFLE nodes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27232 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agonew node
Chris Lattner [Tue, 28 Mar 2006 19:54:42 +0000 (19:54 +0000)]
new node

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27231 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd a new node
Chris Lattner [Tue, 28 Mar 2006 19:54:11 +0000 (19:54 +0000)]
Add a new node

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27230 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoDon't crash on X^X if X is a vector. Instead, produce a vector of zeros.
Chris Lattner [Tue, 28 Mar 2006 19:11:05 +0000 (19:11 +0000)]
Don't crash on X^X if X is a vector.  Instead, produce a vector of zeros.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27229 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd an assertion
Chris Lattner [Tue, 28 Mar 2006 19:04:49 +0000 (19:04 +0000)]
Add an assertion

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27228 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoadd a note
Chris Lattner [Tue, 28 Mar 2006 18:56:23 +0000 (18:56 +0000)]
add a note

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27227 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRefactor address attributes. Add base register to frame info.
Jim Laskey [Tue, 28 Mar 2006 14:58:32 +0000 (14:58 +0000)]
Refactor address attributes.  Add base register to frame info.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27226 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoExpose base register for DwarfWriter. Refactor code accordingly.
Jim Laskey [Tue, 28 Mar 2006 13:48:33 +0000 (13:48 +0000)]
Expose base register for DwarfWriter.  Refactor code accordingly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27225 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMore bulletproofing of llvm.dbg.declare.
Jim Laskey [Tue, 28 Mar 2006 13:45:20 +0000 (13:45 +0000)]
More bulletproofing of llvm.dbg.declare.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27224 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdded missing paren on behalf of Ramana Radhakrishnan.
Jim Laskey [Tue, 28 Mar 2006 10:17:11 +0000 (10:17 +0000)]
Added missing paren on behalf of Ramana Radhakrishnan.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27223 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMissed X86::isUNPCKHMask
Evan Cheng [Tue, 28 Mar 2006 08:27:15 +0000 (08:27 +0000)]
Missed X86::isUNPCKHMask

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27222 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agomovlps and movlpd should be modeled as two address code.
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

18 years agoUpdate
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

18 years agoTypo
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

18 years ago* Prefer using operation of matching types. e.g unpcklpd rather than movlhps.
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

18 years agoUse movhpd is even better than movlhps.
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

18 years agoFix a couple typos
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

18 years agoAdd a few more altivec intrinsics
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

18 years agoKeep Visual Studio informed.
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

18 years agoThese don't directly map to gcc intrinsics any more.
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

18 years agoAdded a couple of entries about movhps and movlhps.
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

18 years agoAll unpack cases are now being handled.
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

18 years ago- Clean up / consoladate various shuffle masks.
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

18 years agoimplement a bunch more intrinsics.
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

18 years agoAdd some more intrinsics: rotates, fp rounds, and random other fp instructions.
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

18 years agogetVectorTyppe(MVT::i64, 2) ==> MVT::v2i64.
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

18 years agoAdd lvxl
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

18 years agoUse normal lvx for scalar_to_vector instead of lve*x. They do the exact
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

18 years agoRegression test for the handling of nulls as arguments to debug intrinsics.
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

18 years agoMore bulletproofing of DebugInfoDesc verify.
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

18 years agoTblgen doesn't like multiple SDNode<> definitions that map to the sameenum value...
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

18 years agoTblgen doesn't like multiple SDNode<> definitions that map to the sameenum value...
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

18 years agoModel unpack lower and interleave as vector_shuffle so we can lower the
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

18 years agoTblgen doesn't like multiple SDNode<> definitions that map to the same
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

18 years agoReenable pointer intrinsics.
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

18 years agoOnly compute intrinsic valuetypes when in a target .td file.
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

18 years agorevert this, it breaks things.
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

18 years agorevert this, it breaks things
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

18 years agoIf adding a link to a collapsed, node, ignore offset.
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

18 years agoAdding links to a node collapsed during type merging crashes.
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

18 years agoReactivate llvm.dbg.declare.
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

18 years agoShould not remove casts from variable's alloca.
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

18 years agoAdd support for intrinsics with pointer arguments in target .td files.
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

18 years agoAdd some missing template specializations for autodereferencing User.
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

18 years agoAdd support for decoding iPTR to the right pointer type.
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

18 years agoadd a new iPTR ValueType for tblgen use
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

18 years agoDivirge from the GCC specification of the load/store intrinsics: only take
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

18 years agoPrint error messages like this:
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

18 years agofix spelling :(
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

18 years agoadd some more intrinsics.
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

18 years agoDisable dbg_declare, it currently breaks the CFE build
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

18 years agoFix legalization of intrinsics with chain and result values
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

18 years agoTranslate llvm target registers to dwarf register numbers properly.
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

18 years agoMisunderstanding.
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

18 years agoTypo.
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

18 years agoClarity.
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

18 years agoAdding other platforms.
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

18 years agoAdd note for Mac OS X developers.
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

18 years agounbreak the build
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

18 years agoUnbreak the build on non-apple compilers :-(
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

18 years agoIntrinsics naming convention change.
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

18 years agoTry again
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

18 years agoAdd a bunch of notes from my journey thus far.
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

18 years agoIncorrect check for FP all one's
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

18 years agoSplit out altivec notes into their own README
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

18 years agoUse pcmpeq to generate vector of all ones.
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

18 years agoChanged isBuildVectorAllOnesInteger to isBuildVectorAllOnes.
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

18 years agoChange isBuildVectorAllOnesInteger to isBuildVectorAllOnes. Also check for
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

18 years agoInstead of printing "INTRINSIC" on intrinsic node, print the intrinsic name.
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

18 years agoteach the inliner to work with packed constants
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

18 years agoFix the JIT encoding of VSEL
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

18 years agoFix the JIT encoding of VSPLTI*
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

18 years agoPass llvm/test/Regression/CodeGen/Generic/debug-info.ll.
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

18 years agoSelectionDAGISel can now natively handle Switch instructions, in the same
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

18 years agoBullet proof against undefined args produced by upgrading ols-style debug info.
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

18 years agoHow to be dumb on $5/day. Need a tri-state to track valid debug descriptors.
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

18 years agoadd vsel
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

18 years agoReadme note
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

18 years agoCodegen vector predicate compares.
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

18 years agoRemove X86:isZeroVector, use ISD::isBuildVectorAllZeros instead; some fixes / cleanups
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

18 years agoRemove PPC:isZeroVector, use ISD::isBuildVectorAllZeros instead
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

18 years agoAdd immAllZerosV helper
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

18 years agoAdd ISD::isBuildVectorAllZeros predicate
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

18 years agoAllow targets to custom lower their own intrinsics if desired.
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

18 years agoAdd predicate comparison intrinsics.
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

18 years agoUpdate dependencies to reflect split of the Intrinsics.td file
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

18 years agoAdd all of the altivec comparison instructions. Add patterns for the
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

18 years agoAdd and 8/16-bit adds, add all integer subtracts, add saturating subtract
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

18 years agoSplit the PPC and X86 intrinsics out to their own files.
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

18 years agoAdd saturating subtracts, non-predicate compares, and some other random
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