Chris Lattner [Sat, 25 Mar 2006 07:51:43 +0000 (07:51 +0000)]
Move all Altivec stuff out into a new PPCInstrAltivec.td file.
Add a bunch of patterns for different datatypes, e.g. bit_convert, undef and
zero vector support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27117
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 07:39:07 +0000 (07:39 +0000)]
Add some basic patterns for other datatypes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27116
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 07:36:56 +0000 (07:36 +0000)]
add all supported formats to the vector register file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27115
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 07:30:34 +0000 (07:30 +0000)]
remove extraneous lets
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27114
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 07:27:18 +0000 (07:27 +0000)]
Add a bunch of simple altivec intrinsics
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27113
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 07:05:55 +0000 (07:05 +0000)]
Add support for __builtin_altivec_vnmsubfp /vmaddfp
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27112
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 07:05:35 +0000 (07:05 +0000)]
Add support for __builtin_altivec_vnmsubfp
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27111
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 06:47:53 +0000 (06:47 +0000)]
When failing selection for an intrinsic, print this:
Cannot yet select: intrinsic %llvm.ppc.altivec.lvx
instead of this:
Cannot yet select: 0x9b047e0: v4i32,ch = INTRINSIC 0x9b04540:1, 0x9b04710, 0x9b04790, 0x9b04540
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27110
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 06:47:10 +0000 (06:47 +0000)]
#include Intrinsics.h into all dag isels
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27109
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 06:32:47 +0000 (06:32 +0000)]
Implement Intrinsic::getName
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27108
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 06:32:07 +0000 (06:32 +0000)]
Add a programatic interface to intrinsic names.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27107
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 06:12:06 +0000 (06:12 +0000)]
Codegen things like:
<int -1, int -1, int -1, int -1>
and
<int 65537, int 65537, int 65537, int 65537>
Using things like:
vspltisb v0, -1
and:
vspltish v0, 1
instead of using constant pool loads.
This implements CodeGen/PowerPC/vec_splat.ll:splat_imm_i{32|16}.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27106
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 06:11:56 +0000 (06:11 +0000)]
New tests for vsplti*
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27105
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 25 Mar 2006 06:05:45 +0000 (06:05 +0000)]
X86 SSE1 cacheability support ops intrinsics
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27104
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 25 Mar 2006 06:03:26 +0000 (06:03 +0000)]
Added SSE cachebility ops
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27103
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 25 Mar 2006 06:00:03 +0000 (06:00 +0000)]
Instruction encoding bug
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27102
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 25 Mar 2006 05:58:52 +0000 (05:58 +0000)]
Added a scalar to vector with zero extension testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27101
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Mar 2006 02:29:35 +0000 (02:29 +0000)]
Add new intrinsic node definitions for tblgen use
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27100
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 25 Mar 2006 02:02:51 +0000 (02:02 +0000)]
X86 SSE1 SIMD store intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27099
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 25 Mar 2006 01:58:54 +0000 (01:58 +0000)]
X86 SSE1 SIMD load intrinsics (movhps, movlps, and movups).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27098
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 25 Mar 2006 01:35:17 +0000 (01:35 +0000)]
X86 SSE1 conversion operations intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27097
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 25 Mar 2006 01:33:37 +0000 (01:33 +0000)]
Added 128-bit packed integer subtraction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27096
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 25 Mar 2006 01:31:59 +0000 (01:31 +0000)]
Added CVTTPS2PI.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27095
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 25 Mar 2006 01:00:18 +0000 (01:00 +0000)]
Added CVTSS2SI.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27094
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 25 Mar 2006 00:32:32 +0000 (00:32 +0000)]
X86 SSE1 comparison intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27093
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 25 Mar 2006 00:18:20 +0000 (00:18 +0000)]
X86 SSE1 arithmetic and logical operation intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27092
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 24 Mar 2006 23:15:12 +0000 (23:15 +0000)]
Support for scalar to vector with zero extension.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27091
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 23:10:39 +0000 (23:10 +0000)]
Change approach so that we get codegen for free for intrinsics. With this,
intrinsics that don't take pointer arguments now work. For example, we can
compile this:
int test3( __m128d *A) {
return _mm_movemask_pd(*A);
}
int test4( __m128 *A) {
return _mm_movemask_ps(*A);
}
to this:
_test3:
movl 4(%esp), %eax
movapd (%eax), %xmm0
movmskpd %xmm0, %eax
ret
_test4:
movl 4(%esp), %eax
movaps (%eax), %xmm0
movmskps %xmm0, %eax
ret
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27090
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 22:49:42 +0000 (22:49 +0000)]
fix inverted conditional
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27089
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 24 Mar 2006 22:48:02 +0000 (22:48 +0000)]
D'oh - should be even numbered.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27088
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 24 Mar 2006 22:28:37 +0000 (22:28 +0000)]
Added LDMXCSR
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27087
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 24 Mar 2006 22:13:47 +0000 (22:13 +0000)]
ldmxcsr is a SSE instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27086
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 24 Mar 2006 22:10:59 +0000 (22:10 +0000)]
Added ldmxcsr intrinsic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27085
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 21:52:20 +0000 (21:52 +0000)]
fix 80 column violations
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27084
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 21:49:18 +0000 (21:49 +0000)]
plug the intrinsics into the patterns for movmsk*
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27083
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 21:48:51 +0000 (21:48 +0000)]
Parse intrinsics correctly and perform type propagation. This doesn't currently
emit the code to select intrinsics, but that is next :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27082
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 24 Mar 2006 21:15:58 +0000 (21:15 +0000)]
Add dwarf register numbering to register data.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27081
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 24 Mar 2006 21:13:21 +0000 (21:13 +0000)]
Add support for dwarf register numbering.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27080
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 24 Mar 2006 21:10:36 +0000 (21:10 +0000)]
Hack no more.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27079
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 20:25:01 +0000 (20:25 +0000)]
Make sure to initialize the TheDef field!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27078
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 20:04:27 +0000 (20:04 +0000)]
add another note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27077
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 19:59:17 +0000 (19:59 +0000)]
add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27076
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 19:49:31 +0000 (19:49 +0000)]
Move CodeGenIntrinsic implementation to CodeGenTarget.cpp with the rest of
the CodeGen* implementations.
Parse the MVT::ValueType for each operand of the intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27075
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 19:41:10 +0000 (19:41 +0000)]
Specify the value type for each llvm type. This needs work for pointers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27074
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 18:52:35 +0000 (18:52 +0000)]
Shuffle some includes around
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27073
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 18:51:56 +0000 (18:51 +0000)]
Pull in valuetypes.td here, we will use it shortly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27072
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 24 Mar 2006 18:45:20 +0000 (18:45 +0000)]
Only to vector shuffle for {x,x,y,y} cases when SCALAR_TO_VECTOR is free.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27071
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 18:44:11 +0000 (18:44 +0000)]
expose intrinsic info to the targets.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27070
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 18:24:43 +0000 (18:24 +0000)]
Fix a bad JIT encoding of VPERM. Why is VPERM D,A,B,C but vfmadd is D,A,C,B ??
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27069
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 17:58:06 +0000 (17:58 +0000)]
Like the comment says, prefer to use the implicit add done by [r+r] addressing
modes than emitting an explicit add and using a base of r0. This implements
Regression/CodeGen/PowerPC/mem-rr-addr-mode.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27068
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 17:57:24 +0000 (17:57 +0000)]
New testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27067
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 24 Mar 2006 16:18:42 +0000 (16:18 +0000)]
Tweak a comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27066
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 24 Mar 2006 10:08:23 +0000 (10:08 +0000)]
Fix indent.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27065
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 24 Mar 2006 10:00:56 +0000 (10:00 +0000)]
Clean up some commentary.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27064
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 24 Mar 2006 09:50:27 +0000 (09:50 +0000)]
Rename for truth in advertising.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27063
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 24 Mar 2006 09:20:27 +0000 (09:20 +0000)]
Fixed some grammer and spelling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27062
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 24 Mar 2006 08:02:50 +0000 (08:02 +0000)]
Zero vector testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27061
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 07:53:47 +0000 (07:53 +0000)]
Disable the i32->float G5 optimization. It is unsafe, as documented in the
comment.
This fixes 177.mesa, and McCat/09-vor with the td scheduler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27060
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 07:48:08 +0000 (07:48 +0000)]
add support for using vxor to build zero vectors. This implements
Regression/CodeGen/PowerPC/vec_zero.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27059
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 07:47:53 +0000 (07:47 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27058
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 24 Mar 2006 07:36:57 +0000 (07:36 +0000)]
Add a facility for invoking the llvm-config tool when linking a program.
This facility allows LLVMLIBS to be specified with something like:
LLVMLIBS = config --libs jit
instead of:
LLVMLIBS = JIT
with the same effect. However, the llvm-config utility is much more versatile
than the single keyword approach. Note that "config" is the keyword after
which any arguments to llvm-config are allowed. When llvm-config is tested
and working well, we'll start using this and drop support for the JIT
keyword.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27057
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 24 Mar 2006 07:29:27 +0000 (07:29 +0000)]
Handle BUILD_VECTOR with all zero elements.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27056
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 07:29:17 +0000 (07:29 +0000)]
prefer to generate constant pool loads over splats. This prevents us from
using a splat for {1.0,1.0,1.0,1.0}
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27055
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 07:16:10 +0000 (07:16 +0000)]
Fix a typo, thanks to Gabor Greif
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27054
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 07:15:07 +0000 (07:15 +0000)]
fix spello
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27053
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 07:14:34 +0000 (07:14 +0000)]
Fix spello
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27052
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 07:14:00 +0000 (07:14 +0000)]
add the actual cost to the debug info
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27051
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 07:13:29 +0000 (07:13 +0000)]
fix two spellos
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27050
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 07:12:19 +0000 (07:12 +0000)]
Gabor points out that we can't spell. :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27049
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 24 Mar 2006 06:42:09 +0000 (06:42 +0000)]
Remove a spurious <table> tag.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27045
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 24 Mar 2006 06:40:32 +0000 (06:40 +0000)]
All v2f64 shuffle cases can be handled.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27044
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Fri, 24 Mar 2006 06:07:16 +0000 (06:07 +0000)]
Fix headers
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27043
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Fri, 24 Mar 2006 03:11:31 +0000 (03:11 +0000)]
Minor corrections.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27042
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Fri, 24 Mar 2006 02:58:54 +0000 (02:58 +0000)]
Minor corrections.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27041
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 24 Mar 2006 02:58:06 +0000 (02:58 +0000)]
More efficient v2f64 shuffle using movlhps, movhlps, unpckhpd, and unpcklpd.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27040
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 24 Mar 2006 02:57:03 +0000 (02:57 +0000)]
A new entry
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27039
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 24 Mar 2006 02:56:00 +0000 (02:56 +0000)]
Add a v2f64 shuffle case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27038
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Fri, 24 Mar 2006 02:53:49 +0000 (02:53 +0000)]
Get JIT/Interpreter working on Windows again.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27037
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 02:26:29 +0000 (02:26 +0000)]
legalize vbit_convert nodes whose result is a legal type.
Legalize intrinsic nodes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27036
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 02:22:33 +0000 (02:22 +0000)]
Lower target intrinsics into an INTRINSIC node
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27035
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 24 Mar 2006 02:22:22 +0000 (02:22 +0000)]
Ignore the lexer output.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27034
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 24 Mar 2006 02:21:35 +0000 (02:21 +0000)]
Ignore the burg output files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27033
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 02:20:47 +0000 (02:20 +0000)]
fix some bogus assertions: noop bitconverts are legal
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27032
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Fri, 24 Mar 2006 02:18:52 +0000 (02:18 +0000)]
Get Visual Studio happy again.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27031
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 24 Mar 2006 01:22:25 +0000 (01:22 +0000)]
Add a vector shuffle test case
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27027
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 24 Mar 2006 01:18:28 +0000 (01:18 +0000)]
Handle more shuffle cases with SHUFP* instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27024
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 24 Mar 2006 01:17:21 +0000 (01:17 +0000)]
Lower BUILD_VECTOR to VECTOR_SHUFFLE if there are two distinct nodes (and if
the target can handle it). Issue two SCALAR_TO_VECTOR ops followed by a
VECTOR_SHUFFLE to select from the two vectors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27023
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 01:13:55 +0000 (01:13 +0000)]
extract some more information from the intrinsic table
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27022
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 24 Mar 2006 01:10:39 +0000 (01:10 +0000)]
Remove the interpreter component as its not working at the moment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27021
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 01:04:30 +0000 (01:04 +0000)]
Identify the INTRINSIC node
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27020
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 01:03:55 +0000 (01:03 +0000)]
add a new intrinsic node
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27019
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 24 Mar 2006 00:04:52 +0000 (00:04 +0000)]
Add a couple simple intrinsics for intel. Fix the v2f64 definition.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27018
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 24 Mar 2006 00:03:37 +0000 (00:03 +0000)]
Add llvm-config to the index.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27017
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 23 Mar 2006 23:53:13 +0000 (23:53 +0000)]
Ignored generated files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27016
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 23 Mar 2006 23:51:43 +0000 (23:51 +0000)]
Ignore generated files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27015
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 23 Mar 2006 23:49:59 +0000 (23:49 +0000)]
Ignore generated file Intrinsics.gen
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27014
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 23 Mar 2006 23:48:12 +0000 (23:48 +0000)]
Add new generated files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27013
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 23 Mar 2006 23:46:47 +0000 (23:46 +0000)]
Add a .cvsignore file to get rid of notices about gram.tab.[ch]
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27012
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 23 Mar 2006 23:45:32 +0000 (23:45 +0000)]
Add new generated files to be ignored.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27011
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 23 Mar 2006 23:44:24 +0000 (23:44 +0000)]
Ignore temporary files generated by building.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27010
91177308-0d34-0410-b5e6-
96231b3b80d8