Evan Cheng [Tue, 25 Apr 2006 23:03:35 +0000 (23:03 +0000)]
Don't forget return void.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27974
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Tue, 25 Apr 2006 20:54:26 +0000 (20:54 +0000)]
Keep the stack from on darwin 16-byte aligned. This fixes many JIT
failres.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27973
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 25 Apr 2006 20:13:52 +0000 (20:13 +0000)]
Separate LowerOperation() into multiple functions, one per opcode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27972
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Tue, 25 Apr 2006 19:33:41 +0000 (19:33 +0000)]
slightly more useful error message
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27971
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Tue, 25 Apr 2006 19:33:23 +0000 (19:33 +0000)]
better c99 struct handling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27970
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Tue, 25 Apr 2006 19:27:56 +0000 (19:27 +0000)]
another c99 style problem
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27969
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 25 Apr 2006 17:48:41 +0000 (17:48 +0000)]
Fix a typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27968
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Tue, 25 Apr 2006 17:46:32 +0000 (17:46 +0000)]
Fix a warning
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27967
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Tue, 25 Apr 2006 04:45:59 +0000 (04:45 +0000)]
No functionality changes, but cleaner code with correct comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27966
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 25 Apr 2006 00:50:01 +0000 (00:50 +0000)]
Explicitly specify result type for def : Pat<> patterns (if it produces a vector
result). Otherwise tblgen will pick the default (v16i8 for 128-bit vector).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27965
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 24 Apr 2006 23:34:56 +0000 (23:34 +0000)]
Added X86 SSE2 intrinsics which can be represented as vector_shuffles. This is
a temporary workaround for the 2-wide vector_shuffle problem (i.e. its mask
would have type v2i32 which is not legal).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27964
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 24 Apr 2006 23:30:10 +0000 (23:30 +0000)]
Add a new entry.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27963
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 24 Apr 2006 23:03:22 +0000 (23:03 +0000)]
Added a movq test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27962
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 24 Apr 2006 22:58:52 +0000 (22:58 +0000)]
Special case handling two wide build_vector(0, x).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27961
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 24 Apr 2006 21:58:20 +0000 (21:58 +0000)]
Some missing movlps, movhps, movlpd, and movhpd patterns.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27960
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 24 Apr 2006 18:01:45 +0000 (18:01 +0000)]
A little bit more build_vector enhancement for v8i16 cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27959
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 24 Apr 2006 17:38:16 +0000 (17:38 +0000)]
Remove a completed entry.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27958
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 Apr 2006 16:34:45 +0000 (16:34 +0000)]
Suggest looking at the SPARC backend. How weird is that?? :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27957
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 24 Apr 2006 06:42:15 +0000 (06:42 +0000)]
Added addJumpTableIndex
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27956
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 24 Apr 2006 05:37:35 +0000 (05:37 +0000)]
MakeMIInst() should handle jump table index operands.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27955
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 Apr 2006 19:47:09 +0000 (19:47 +0000)]
Add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27954
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sun, 23 Apr 2006 06:35:19 +0000 (06:35 +0000)]
MOVL shuffle (i.e. movd or movss / movsd from memory) of undef, V2 == V2
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27953
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sun, 23 Apr 2006 06:26:20 +0000 (06:26 +0000)]
Fix the updating of the machine CFG when a PHI node was in a successor of
the jump table's range check block. This re-enables 100% dense jump tables
by default on PPC & x86
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27952
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Sun, 23 Apr 2006 04:37:08 +0000 (04:37 +0000)]
Keep Visual Studio informed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27951
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sat, 22 Apr 2006 23:52:35 +0000 (23:52 +0000)]
Code cleanup associated with jump tables, thanks to Chris for noticing
these.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27950
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sat, 22 Apr 2006 23:51:56 +0000 (23:51 +0000)]
Turn of jump tables for a bit, there are still some issues to work out with
updating the machine CFG.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27949
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sat, 22 Apr 2006 22:31:45 +0000 (22:31 +0000)]
Optimized stores to the constant pool, while cool, are unnecessary.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27948
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sat, 22 Apr 2006 18:53:45 +0000 (18:53 +0000)]
JumpTable support! What this represents is working asm and jit support for
x86 and ppc for 100% dense switch statements when relocations are non-PIC.
This support will be extended and enhanced in the coming days to support
PIC, and less dense forms of jump tables.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27947
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 22 Apr 2006 08:34:05 +0000 (08:34 +0000)]
Don't do all the lowering stuff for 2-wide build_vector's. Also, minor optimization for shuffle of undef.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27946
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 22 Apr 2006 06:21:46 +0000 (06:21 +0000)]
Fix a performance regression. Use {p}shuf* when there are only two distinct elements in a build_vector.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27945
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 22 Apr 2006 06:19:11 +0000 (06:19 +0000)]
Two more build_vector tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27944
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 22 Apr 2006 06:17:56 +0000 (06:17 +0000)]
Teach the JIT how to relocate LI, this fixes the JIT on Prolangs-C/TimberWolfMC
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27943
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 22 Apr 2006 05:04:23 +0000 (05:04 +0000)]
This no longer needs the JIT.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27942
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 22 Apr 2006 05:02:46 +0000 (05:02 +0000)]
Fix JIT support for static ctors, which was apparently completely broken!
This allows Prolangs-C++/city and probably a bunch of other stuff to work
well with the new front-end
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27941
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 21 Apr 2006 23:03:30 +0000 (23:03 +0000)]
Revamp build_vector lowering to take advantage of movss and movd instructions.
movd always clear the top 96 bits and movss does so when it's loading the
value from memory.
The net result is codegen for 4-wide shuffles is much improved. It is near
optimal if one or more elements is a zero. e.g.
__m128i test(int a, int b) {
return _mm_set_epi32(0, 0, b, a);
}
compiles to
_test:
movd 8(%esp), %xmm1
movd 4(%esp), %xmm0
punpckldq %xmm1, %xmm0
ret
compare to gcc:
_test:
subl $12, %esp
movd 20(%esp), %xmm0
movd 16(%esp), %xmm1
punpckldq %xmm0, %xmm1
movq %xmm1, %xmm0
movhps LC0, %xmm0
addl $12, %esp
ret
or icc:
_test:
movd 4(%esp), %xmm0 #5.10
movd 8(%esp), %xmm3 #5.10
xorl %eax, %eax #5.10
movd %eax, %xmm1 #5.10
punpckldq %xmm1, %xmm0 #5.10
movd %eax, %xmm2 #5.10
punpckldq %xmm2, %xmm3 #5.10
punpckldq %xmm3, %xmm0 #5.10
ret #5.10
There are still room for improvement, for example the FP variant of the above example:
__m128 test(float a, float b) {
return _mm_set_ps(0.0, 0.0, b, a);
}
_test:
movss 8(%esp), %xmm1
movss 4(%esp), %xmm0
unpcklps %xmm1, %xmm0
xorps %xmm1, %xmm1
movlhps %xmm1, %xmm0
ret
The xorps and movlhps are unnecessary. This will require post legalizer optimization to handle.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27939
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 21 Apr 2006 22:11:27 +0000 (22:11 +0000)]
Fix the comment
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27938
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 21 Apr 2006 22:04:15 +0000 (22:04 +0000)]
Change the PPC JIT to use a Static relocation model
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27937
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 21 Apr 2006 21:37:40 +0000 (21:37 +0000)]
typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27936
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 21 Apr 2006 21:05:22 +0000 (21:05 +0000)]
fix thinko
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27935
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 21 Apr 2006 21:03:21 +0000 (21:03 +0000)]
add some low-prio notes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27934
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 21 Apr 2006 17:16:16 +0000 (17:16 +0000)]
The BFS scheduler is apparently nondeterminstic (causes many llvmgcc bootstrap
miscompares). Switch RISC targets to use the list-td scheduler, which isn't.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27933
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 21 Apr 2006 16:42:47 +0000 (16:42 +0000)]
movddup is a SSE3 instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27932
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 21 Apr 2006 15:33:35 +0000 (15:33 +0000)]
Remove a hack required by V9.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27931
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 21 Apr 2006 15:32:26 +0000 (15:32 +0000)]
Fix a couple more memory issues
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27930
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 21 Apr 2006 05:29:25 +0000 (05:29 +0000)]
Remove the extraneous --defined-only option to nm. This is the default and
some versions of nm don't recognize it (its a gnu option).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27928
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 21 Apr 2006 04:58:23 +0000 (04:58 +0000)]
Add && to each RUN: line (except the last one).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27927
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 21 Apr 2006 01:22:41 +0000 (01:22 +0000)]
More build_vector tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27926
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 21 Apr 2006 01:21:23 +0000 (01:21 +0000)]
Check for llc crash.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27925
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 21 Apr 2006 01:12:32 +0000 (01:12 +0000)]
To be replaced with another test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27924
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 21 Apr 2006 01:05:10 +0000 (01:05 +0000)]
Now generating perfect (I think) code for "vector set" with a single non-zero
scalar value.
e.g.
_mm_set_epi32(0, a, 0, 0);
==>
movd 4(%esp), %xmm0
pshufd $69, %xmm0, %xmm0
_mm_set_epi8(0, 0, 0, 0, 0, a, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
==>
movzbw 4(%esp), %ax
movzwl %ax, %eax
pxor %xmm0, %xmm0
pinsrw $5, %eax, %xmm0
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27923
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 23:55:59 +0000 (23:55 +0000)]
Fix a really subtle and obnoxious memory bug that caused issues with an
llvm-gcc4 boostrap. Whenever a node is deleted by the dag combiner, it
*must* be returned by the visit function, or the dag combiner will not
know that the node has been processed (and will, e.g., send it to the
target dag combine xforms).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27922
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 20 Apr 2006 23:09:57 +0000 (23:09 +0000)]
Don't require the "dot" program if -flat option is given, and don't produce
any of the fancy graphs or other output. Just produce the flat, makefile
style output on stdout.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27921
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Thu, 20 Apr 2006 22:19:06 +0000 (22:19 +0000)]
Keep Visual Studio informed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27920
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 20 Apr 2006 22:15:30 +0000 (22:15 +0000)]
Configure llvm-config in tools, not utils.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27919
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 20 Apr 2006 21:16:32 +0000 (21:16 +0000)]
Remove the llvm-config directory. Its now in tools.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27918
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 20 Apr 2006 21:15:41 +0000 (21:15 +0000)]
llvm-config doesn't live here anymore ==> tools
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27917
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 20 Apr 2006 21:14:39 +0000 (21:14 +0000)]
Okay, llvm-config is good to go now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27916
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 20 Apr 2006 21:13:58 +0000 (21:13 +0000)]
Several Changes To Support Building llvm-config:
1. If Perl is not available, don't run Perl dependent targets.
2. Check in FinalLibDeps.txt for build environments that can't build it
because there's no Perl processor.
3. Ensure that FinalLibDeps.txt depends on LibDeps.txt so it is
automatically regenerated.
4. Support objdir != srcdir building.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27915
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 20 Apr 2006 21:00:24 +0000 (21:00 +0000)]
Don't build llvm-config until issues are resolved.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27914
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 20 Apr 2006 20:53:23 +0000 (20:53 +0000)]
Build the llvm-config directory as a tool.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27913
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 20:48:50 +0000 (20:48 +0000)]
Fix Transforms/ScalarRepl/2006-04-20-PromoteCrash.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27912
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 20:48:32 +0000 (20:48 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27911
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 20 Apr 2006 19:50:53 +0000 (19:50 +0000)]
Update the library dependencies for 1.8 with SparcV9 now gone.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27910
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 20 Apr 2006 19:47:28 +0000 (19:47 +0000)]
Don't know what I was thinking...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27909
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 19:01:30 +0000 (19:01 +0000)]
Fix the CodeGen/PowerPC/buildvec_canonicalize.ll regression last night.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27908
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 18:49:28 +0000 (18:49 +0000)]
add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27907
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 20 Apr 2006 18:47:13 +0000 (18:47 +0000)]
Remove Burg as a directory to be considered.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27906
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 20 Apr 2006 18:46:45 +0000 (18:46 +0000)]
Remove more references to Burg.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27905
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 20 Apr 2006 18:44:24 +0000 (18:44 +0000)]
Remove reference to BURG variable. It no longer exists.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27904
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 18:43:59 +0000 (18:43 +0000)]
remove some stuff
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27903
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 20 Apr 2006 18:42:24 +0000 (18:42 +0000)]
Remove traces of Burg utility now that its gone and not needed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27902
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 20 Apr 2006 18:39:19 +0000 (18:39 +0000)]
Burg not needed any more now that SparcV9 is gone.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27901
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 18:33:11 +0000 (18:33 +0000)]
remove some v9 specific code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27900
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 18:32:41 +0000 (18:32 +0000)]
This field no longer exists
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27899
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 18:32:22 +0000 (18:32 +0000)]
Don't fill in fields that no longer exist.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27898
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 18:32:02 +0000 (18:32 +0000)]
Remove a bunch of dead stuff, shrinkifying TargetInstrDescriptor significantly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27897
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 18:17:21 +0000 (18:17 +0000)]
Remove some obsolete interfaces
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27896
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 18:16:45 +0000 (18:16 +0000)]
Remove this obsolete file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27895
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 18:09:13 +0000 (18:09 +0000)]
Remove some of the obvious v9-specific cruft
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27894
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 18:08:53 +0000 (18:08 +0000)]
Remove some of the obvious V9-specific cruft
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27893
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 20 Apr 2006 17:59:30 +0000 (17:59 +0000)]
Vector extract element test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27892
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 17:52:00 +0000 (17:52 +0000)]
Remove V9 jit support
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27891
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 20 Apr 2006 17:50:10 +0000 (17:50 +0000)]
Vector insert test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27890
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 17:45:33 +0000 (17:45 +0000)]
allow this dir to get pruned
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27889
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 17:44:51 +0000 (17:44 +0000)]
Remove this target's reg tests
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27888
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 17:43:41 +0000 (17:43 +0000)]
Fails with all sparcs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27887
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 17:42:23 +0000 (17:42 +0000)]
Remove V9
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27886
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 17:15:44 +0000 (17:15 +0000)]
This target is no longer built. The ,v files now live in the reoptimizer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27885
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 17:07:46 +0000 (17:07 +0000)]
Never link in sparcv9
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27884
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 17:01:19 +0000 (17:01 +0000)]
Never build SparcV9
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27883
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Apr 2006 15:45:54 +0000 (15:45 +0000)]
remove a dead prototype
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27882
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Thu, 20 Apr 2006 15:41:37 +0000 (15:41 +0000)]
Make code match cvs commit message :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27881
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Thu, 20 Apr 2006 14:56:47 +0000 (14:56 +0000)]
If we can convert the return pointer type into an integer that IntPtrType
can be converted to losslessly, we can continue the conversion to a direct call.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27880
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Thu, 20 Apr 2006 14:54:17 +0000 (14:54 +0000)]
can we cast between pointers and IntPtrType
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27879
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 20 Apr 2006 14:17:47 +0000 (14:17 +0000)]
Add a missing =back to eliminate error.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27878
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 20 Apr 2006 09:05:16 +0000 (09:05 +0000)]
v16i8 splat with 2 punpcklbw and a single pshufd.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27877
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 20 Apr 2006 09:01:54 +0000 (09:01 +0000)]
Another shuffle test. For 4-wide shuffle, no more than 3 {p}shuf*.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27876
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 20 Apr 2006 08:58:49 +0000 (08:58 +0000)]
- 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
Evan Cheng [Thu, 20 Apr 2006 08:56:16 +0000 (08:56 +0000)]
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
Evan Cheng [Thu, 20 Apr 2006 08:54:13 +0000 (08:54 +0000)]
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