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
Reid Spencer [Thu, 23 Mar 2006 23:41:57 +0000 (23:41 +0000)]
Tired of wading through cvs's list ? files that are generated when building
with srcdir = objdir to see what's okay and what's cruft. So, in goes a
bunch of .cvsignore files to shut cvs up about known output from running
"make check".
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27009
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 23 Mar 2006 23:24:51 +0000 (23:24 +0000)]
Typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27008
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 23 Mar 2006 23:24:46 +0000 (23:24 +0000)]
Ignore some files that occur when srcdir = objdir.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27007
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 23 Mar 2006 23:22:16 +0000 (23:22 +0000)]
Documentation for llvm-config by Eric Kidd.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27006
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 23 Mar 2006 23:21:29 +0000 (23:21 +0000)]
Update to llvm-config tool, by Erik Kidd:
1. Check for Perl and only build llvm-config if its available.
2. Add some virtual components
3. Don't depend on "standard" location for Perl, but configured location
4. Document the tool with a POD file.
This version is now ready for testing by users.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27005
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 23 Mar 2006 23:05:52 +0000 (23:05 +0000)]
Unneeded forward.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27004
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 23 Mar 2006 23:04:50 +0000 (23:04 +0000)]
A little script to find LLVM symbols. Ideally this would use c++filt for
both input and output to render everything in C++, but that will be the
next patch. For now, it just runs nm and greps each .o or .a file for
the desired symbol.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27003
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 23 Mar 2006 23:02:34 +0000 (23:02 +0000)]
Make sure types are allocated in the scope of their use.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27002
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 23 Mar 2006 22:42:50 +0000 (22:42 +0000)]
Don't print out ugly command line when building LibDeps.txt.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27001
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 23 Mar 2006 21:28:44 +0000 (21:28 +0000)]
add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27000
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 23 Mar 2006 21:16:34 +0000 (21:16 +0000)]
add support for splitting casts. This implements
CodeGen/Generic/vector.ll:test_cast_2.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26999
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 23 Mar 2006 21:15:57 +0000 (21:15 +0000)]
add some tests for typecasts and extract_element
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26998
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 23 Mar 2006 20:26:04 +0000 (20:26 +0000)]
Typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26997
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 23 Mar 2006 20:13:25 +0000 (20:13 +0000)]
Add some more bulletproofing to auto upgrade of llvm.dbg intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26996
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 23 Mar 2006 19:54:27 +0000 (19:54 +0000)]
Add PPC vector bit-convert support
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26995
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 23 Mar 2006 18:12:57 +0000 (18:12 +0000)]
Add support to locate local variables in frames (early version.)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26994
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 23 Mar 2006 18:11:33 +0000 (18:11 +0000)]
Strip changes to llvm.dbg intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26993
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 23 Mar 2006 18:10:42 +0000 (18:10 +0000)]
Can't combine anymore - we don't have a chain through llvm.dbg intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26992
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 23 Mar 2006 18:09:44 +0000 (18:09 +0000)]
Change interface to DwarfWriter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26991
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 23 Mar 2006 18:08:29 +0000 (18:08 +0000)]
Modify how CBE handles #lines.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26990
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 23 Mar 2006 18:07:55 +0000 (18:07 +0000)]
Generate local variable and scope information and equivalent dwarf forms.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26989
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 23 Mar 2006 18:06:46 +0000 (18:06 +0000)]
Handle new forms of llvm.dbg intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26988
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 23 Mar 2006 18:05:12 +0000 (18:05 +0000)]
Simplify handling of llvm.dbg intrinsic operands to one spot.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26987
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 23 Mar 2006 18:04:18 +0000 (18:04 +0000)]
Modify usage of llvm.dbg intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26986
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 23 Mar 2006 18:03:20 +0000 (18:03 +0000)]
Change the argument types of llvm.dbg intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26985
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 23 Mar 2006 18:01:12 +0000 (18:01 +0000)]
Support for locating of debug items in frames.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26984
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 23 Mar 2006 17:58:46 +0000 (17:58 +0000)]
Correction of stoppoint arguments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26983
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 23 Mar 2006 17:54:33 +0000 (17:54 +0000)]
Updated information related to local variables and scopes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26982
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 23 Mar 2006 16:13:50 +0000 (16:13 +0000)]
Fix the encodings of these new instructions, hopefully fixing the JIT
failures from last night
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26981
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 23 Mar 2006 07:44:07 +0000 (07:44 +0000)]
Following icc's lead: use movdqa to load / store 128-bit integer vectors
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26980
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 23 Mar 2006 06:53:38 +0000 (06:53 +0000)]
Add HowToReleaseLLVM.html.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26979
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 23 Mar 2006 06:45:42 +0000 (06:45 +0000)]
A very early, rough draft of a guide to making public releases for LLVM.
This document will detail the steps needed for making a quality release of
LLVM that ensures the release functions and is of high quality.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26978
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 23 Mar 2006 06:19:04 +0000 (06:19 +0000)]
Wrap long lines, remove unnecessarily empty lines.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26977
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 23 Mar 2006 06:15:27 +0000 (06:15 +0000)]
Updated for library changes:
1. LLVMCBackend.o now depends on LLVMCodeGen.o (why we're not sure)
2. LLVMExecutionEngine.o no longer depends on LLVMInterpreter.o nor LLVMJIT.o
Thanks, Chris.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26976
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 23 Mar 2006 05:43:58 +0000 (05:43 +0000)]
prune #includes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26975
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 23 Mar 2006 05:43:16 +0000 (05:43 +0000)]
Eliminate IntrinsicLowering from TargetMachine.
Make the CBE and V9 backends create their own, since they're the only ones that use it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26974
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 23 Mar 2006 05:41:41 +0000 (05:41 +0000)]
Eliminate IntrinsicLowering from TargetMachine.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26973
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 23 Mar 2006 05:29:04 +0000 (05:29 +0000)]
simplify some code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26972
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 23 Mar 2006 05:28:02 +0000 (05:28 +0000)]
remove always-null IntrinsicLowering argument.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26971
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 23 Mar 2006 05:22:51 +0000 (05:22 +0000)]
remove the intrinsiclowering hook
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26970
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 23 Mar 2006 02:36:37 +0000 (02:36 +0000)]
Add v4i32 <-> v4f32 bitconvert patterns.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26969
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 23 Mar 2006 02:35:32 +0000 (02:35 +0000)]
Allow result node to be a simple leaf node. This enable bitconvert patterns
like this:
def : Pat<(v4i32 (bitconvert (v4f32 VR128:$src))), (v4i32 VR128:$src)>;
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26968
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 23 Mar 2006 01:57:24 +0000 (01:57 +0000)]
Add 128-bit integer vector load and add (for testing).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26967
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Thu, 23 Mar 2006 01:29:48 +0000 (01:29 +0000)]
Add support for 8 bit immediates with 16/32 bit cmp instructions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26966
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 22 Mar 2006 22:20:49 +0000 (22:20 +0000)]
Fix a typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26965
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 22 Mar 2006 22:07:06 +0000 (22:07 +0000)]
Added a ValueType operand to isShuffleMaskLegal(). For now, x86 will not do
64-bit vector shuffle.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26964
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 22 Mar 2006 21:39:25 +0000 (21:39 +0000)]
Replace vector splat test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26963
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 22 Mar 2006 20:29:11 +0000 (20:29 +0000)]
Add a v2f64 splat (using movlhps) test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26962
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 22 Mar 2006 20:09:35 +0000 (20:09 +0000)]
Implement simple support for vector casting. This can currently only handle
casts between legal vector types.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26961
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 22 Mar 2006 20:09:04 +0000 (20:09 +0000)]
Fix comments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26960
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 22 Mar 2006 20:08:18 +0000 (20:08 +0000)]
SHUFP* are two address code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26959
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 22 Mar 2006 19:56:46 +0000 (19:56 +0000)]
add a new node
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26958
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 22 Mar 2006 19:22:18 +0000 (19:22 +0000)]
Some clean up.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26957
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 22 Mar 2006 19:16:21 +0000 (19:16 +0000)]
- Supposely movlhps is faster / better than unpcklpd.
- Don't forget pshufd is only available with sse2.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26956
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 22 Mar 2006 19:12:46 +0000 (19:12 +0000)]
test that vspltw is generated for test cases
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26955
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 22 Mar 2006 18:59:22 +0000 (18:59 +0000)]
- Implement X86ISelLowering::isShuffleMaskLegal(). We currently only support
splat and PSHUFD cases.
- Clean up shuffle / splat matching code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26954
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 22 Mar 2006 17:27:24 +0000 (17:27 +0000)]
silence a bogus gcc warning
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26953
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Wed, 22 Mar 2006 15:59:55 +0000 (15:59 +0000)]
These changes are necessary to support the new llvm-config tool. llvm-config
is a handy tool for users of LLVM who want to be able to quickly get
information about LLVM's configuration. It is intended to be used in the
command line of other tools. Documentation will be forthcoming in a
subsequent patch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26952
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 22 Mar 2006 08:01:21 +0000 (08:01 +0000)]
- VECTOR_SHUFFLE of v4i32 / v4f32 with undef second vector always matches
PSHUFD. We can make permutes entries which point to the undef pointing
anything we want.
- Change some names to appease Chris.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26951
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 22 Mar 2006 07:33:46 +0000 (07:33 +0000)]
add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26950
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 22 Mar 2006 07:10:28 +0000 (07:10 +0000)]
Fix PSHUF* and SHUF* jit code emission problems
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26949
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 22 Mar 2006 06:07:50 +0000 (06:07 +0000)]
Eliminate the dependency of ExecutionEngine on the JIT/Interpreter libraries.
Now you can build a tool with just the JIT or just the interpreter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26946
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 22 Mar 2006 06:06:37 +0000 (06:06 +0000)]
wrap lines to 80 columns.
Add static JITCtor/InterpCtor fields
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26945
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 22 Mar 2006 05:33:23 +0000 (05:33 +0000)]
This has been implemented. Tweak it into another note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26944
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 22 Mar 2006 05:30:33 +0000 (05:30 +0000)]
When possible, custom lower 32-bit SINT_TO_FP to this:
_foo2:
extsw r2, r3
std r2, -8(r1)
lfd f0, -8(r1)
fcfid f0, f0
frsp f1, f0
blr
instead of this:
_foo2:
lis r2, ha16(LCPI2_0)
lis r4, 17200
xoris r3, r3, 32768
stw r3, -4(r1)
stw r4, -8(r1)
lfs f0, lo16(LCPI2_0)(r2)
lfd f1, -8(r1)
fsub f0, f1, f0
frsp f1, f0
blr
This speeds up Misc/pi from 2.44s->2.09s with LLC and from 3.01->2.18s
with llcbeta (16.7% and 38.1% respectively).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26943
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 22 Mar 2006 05:26:03 +0000 (05:26 +0000)]
Add support for "ri" addressing modes where the immediate is a 14-bit field
which is shifted left two bits before use. Instructions like STD use this
addressing mode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26942
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 22 Mar 2006 04:18:34 +0000 (04:18 +0000)]
fix a warning
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26941
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 22 Mar 2006 02:53:00 +0000 (02:53 +0000)]
Some splat and shuffle support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26940
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 22 Mar 2006 02:52:03 +0000 (02:52 +0000)]
Add a couple more pseudo instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26939
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 22 Mar 2006 01:46:54 +0000 (01:46 +0000)]
Endianness does not affect the order of vector fields. This fixes
SingleSource/UnitTests/Vector/build.c
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26936
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 22 Mar 2006 01:44:36 +0000 (01:44 +0000)]
Fix the JIT encoding of the VAForm_1 instructions, including vmaddfp
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26935
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 22 Mar 2006 00:12:37 +0000 (00:12 +0000)]
Enclose some variables in a scope to avoid error with some gcc versions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26934
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 21 Mar 2006 23:04:23 +0000 (23:04 +0000)]
Didn't mean to check this in. No MMX support yet.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26933
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 21 Mar 2006 23:01:21 +0000 (23:01 +0000)]
- Use movaps to store 128-bit vector integers.
- Each scalar to vector v8i16 and v16i8 is a any_extend followed by a movd.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26932
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 21 Mar 2006 21:02:03 +0000 (21:02 +0000)]
add expand support for extractelement
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26931
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 21 Mar 2006 20:51:05 +0000 (20:51 +0000)]
These targets don't support EXTRACT_VECTOR_ELT, though, in time, X86 will.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26930
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 21 Mar 2006 20:44:17 +0000 (20:44 +0000)]
Don't forget to promote xform function to an explicit node for def : Pat<>
patterns.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26929
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 21 Mar 2006 20:44:12 +0000 (20:44 +0000)]
add some trivial support for extractelement.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26928
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 21 Mar 2006 20:43:08 +0000 (20:43 +0000)]
add some nodes for extractelement
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26927
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 21 Mar 2006 20:19:37 +0000 (20:19 +0000)]
Don't emit pseudo instructions!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26926
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 21 Mar 2006 19:20:37 +0000 (19:20 +0000)]
Add a hacky workaround for crashes due to vectors live across blocks.
Note that this code won't work for vectors that aren't legal on the
target. Improvements coming.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26925
91177308-0d34-0410-b5e6-
96231b3b80d8