Evan Cheng [Mon, 10 Apr 2006 07:30:13 +0000 (07:30 +0000)]
Add a vselect test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27557
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 10 Apr 2006 07:23:14 +0000 (07:23 +0000)]
Conditional move of vector types.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27556
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 10 Apr 2006 07:22:03 +0000 (07:22 +0000)]
New entries
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27555
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 10 Apr 2006 07:21:31 +0000 (07:21 +0000)]
Use movaps to do VR128 reg-to-reg copies for now. It's shorter and available for SSE1.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27554
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 9 Apr 2006 23:45:38 +0000 (23:45 +0000)]
Update docs for ENABLE_ASSERTIONS -> DISABLE_ASSERTIONS
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27553
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 9 Apr 2006 23:41:14 +0000 (23:41 +0000)]
Check for DISABLE_ASSERTIONS, not ENABLE_ASSERTIONS
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27552
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 9 Apr 2006 23:39:43 +0000 (23:39 +0000)]
Fix a comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27551
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 9 Apr 2006 20:42:14 +0000 (20:42 +0000)]
Change the assertions defaults:
1. Assertions now default to on for all builds
2. If you want them disabled you must (a) --disable-assertions to configure
or DISABLE_ASSERTIONS=1 to make.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27548
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 23:07:04 +0000 (23:07 +0000)]
Move the vector instructions to their own subsection.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27545
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 22:59:15 +0000 (22:59 +0000)]
properly mark vector selects as expanded to select_cc
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27544
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 22:45:08 +0000 (22:45 +0000)]
Add VRRC select support
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27543
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 22:22:57 +0000 (22:22 +0000)]
Add code generator support for VSELECT
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27542
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 22:16:01 +0000 (22:16 +0000)]
Add a new VSELECT node.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27541
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sat, 8 Apr 2006 19:46:55 +0000 (19:46 +0000)]
Disable switch lowering for targets based on the selection dag isel,
letting the code generator handle them directly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27539
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 07:14:26 +0000 (07:14 +0000)]
Implement PowerPC/CodeGen/vec_splat.ll:spltish to use vsplish instead of a
constant pool load.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27538
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 07:13:46 +0000 (07:13 +0000)]
add new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27537
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 06:46:53 +0000 (06:46 +0000)]
Change the interface to the predicate that determines if vsplti* can be used.
No functionality changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27536
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Sat, 8 Apr 2006 06:04:56 +0000 (06:04 +0000)]
Misc. project changes. html + build config changes supplied by Devang.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27535
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 8 Apr 2006 05:38:03 +0000 (05:38 +0000)]
Initialize SDOperand values because the gcc 4.0.2 compiler complains about
them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27534
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 05:34:25 +0000 (05:34 +0000)]
Canonicalize vvector_shuffle(x,x) -> vvector_shuffle(x,undef) to enable patterns
to match again :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27533
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 05:09:48 +0000 (05:09 +0000)]
Add constant replacement for insertelement/vectorshuffle constant exprs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27532
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 04:40:53 +0000 (04:40 +0000)]
Wrap long lines, fix verification error
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27531
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 04:39:19 +0000 (04:39 +0000)]
use the right escapes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27530
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 04:15:24 +0000 (04:15 +0000)]
Codegen shufflevector as VVECTOR_SHUFFLE
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27529
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 04:13:17 +0000 (04:13 +0000)]
add a sanity check: LegalizeOp should return a value that is the same type
as its input.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27528
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 04:09:19 +0000 (04:09 +0000)]
use isValidOperands instead of duplicating checks
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27527
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 04:09:02 +0000 (04:09 +0000)]
Regenerate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27526
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 04:08:32 +0000 (04:08 +0000)]
Use isValidOperands instead of duplicating or eliding checks.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27525
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 04:07:52 +0000 (04:07 +0000)]
Use the isValidOperands helper instead of duplicating checking code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27524
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 04:05:48 +0000 (04:05 +0000)]
Add methods to check insertelement/extractelement instructions for validity,
check validity when instructions are created.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27523
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 04:04:54 +0000 (04:04 +0000)]
Add methods to check insert/extract element instructions for validity
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27522
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 03:55:17 +0000 (03:55 +0000)]
regenerate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27521
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 03:53:34 +0000 (03:53 +0000)]
Add insertelement and shufflevector constantexpr support
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27520
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 8 Apr 2006 02:14:37 +0000 (02:14 +0000)]
Fix recursion:
1. Make setting OPTIONAL_DIRS use immediate assignment
2. Include Makefile.config before ifeq tests and then Makefile.rules later
instead of Makefile.common up front. This ensures that the variable
values are set before the ifeq statements in Makefile.rules are
evaluated.
With this, recursion into projects/examples is corrected.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27519
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 8 Apr 2006 01:57:10 +0000 (01:57 +0000)]
Don't build projects/examples if libs-only was specified.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27518
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 8 Apr 2006 01:46:37 +0000 (01:46 +0000)]
INSERT_VECTOR_ELT lowering bug:
store vector to $esp
store element to $esp + sizeof(VT) * index
load vector from $esp
The bug is VT is the type of the vector element, not the type of the vector!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27517
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 8 Apr 2006 01:41:26 +0000 (01:41 +0000)]
Ensure that the automatic "CVS build" detection works for both
objdir == srcdir and objdir != srcdir.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27516
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 01:19:47 +0000 (01:19 +0000)]
Add shufflevector support
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27515
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 01:19:25 +0000 (01:19 +0000)]
Stub out shufflevector
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27514
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 01:19:12 +0000 (01:19 +0000)]
Add supprot for shufflevector
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27513
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 01:18:56 +0000 (01:18 +0000)]
regenerate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27512
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 01:18:35 +0000 (01:18 +0000)]
Parse shufflevector
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27511
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 01:18:18 +0000 (01:18 +0000)]
Add shufflevector support, todo, implement better constant folding.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27510
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 01:17:59 +0000 (01:17 +0000)]
Add shufflevector reading support
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27509
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 01:17:42 +0000 (01:17 +0000)]
new testcase for shufflevector
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27508
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 01:15:18 +0000 (01:15 +0000)]
Add a new shufflevector instruction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27507
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 8 Apr 2006 00:47:44 +0000 (00:47 +0000)]
ldmxcsr and stmxcsr.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27506
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 8 Apr 2006 00:47:01 +0000 (00:47 +0000)]
Fix int_x86_sse_stmxcsr and int_x86_sse_ldmxcsr. Not directly translated from
gcc builtins. They are not lowered into these intrinsics which take a ptr
argument.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27505
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Sat, 8 Apr 2006 00:43:03 +0000 (00:43 +0000)]
Get Visual Studio building again.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27504
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Sat, 8 Apr 2006 00:35:59 +0000 (00:35 +0000)]
Remove section change in function end, preventing override of function's real
section.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27503
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 8 Apr 2006 00:13:41 +0000 (00:13 +0000)]
Description for the new shufflevector instruction I'm adding.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27502
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 7 Apr 2006 21:53:05 +0000 (21:53 +0000)]
Code clean up.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27501
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 7 Apr 2006 21:52:15 +0000 (21:52 +0000)]
Doh!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27500
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 7 Apr 2006 21:45:23 +0000 (21:45 +0000)]
Invert the tests on LLVMGCC_MAJVERS to check for value 4 instead of value
3. This ensures that if llvm-gcc isn't available and consequently the value
of LLVMGCC_MAJVERS is blank, that the old (include runtime) behavior will
persist.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27499
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 7 Apr 2006 21:20:58 +0000 (21:20 +0000)]
Added patterns for MOVHPSmr and MOVLPSmr.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27497
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 7 Apr 2006 21:19:53 +0000 (21:19 +0000)]
Keep track of an Mac OS X / x86 ABI bug.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27496
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 7 Apr 2006 21:18:40 +0000 (21:18 +0000)]
Remove int_x86_sse_storeh_ps and int_x86_sse_storel_ps. These are now lowered
by the frontend.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27495
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 7 Apr 2006 20:44:42 +0000 (20:44 +0000)]
Make sure that debug labels are defined within the same section and after the
entry point of a function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27494
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 7 Apr 2006 18:41:16 +0000 (18:41 +0000)]
add a newline at the end of the file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27492
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 7 Apr 2006 16:34:46 +0000 (16:34 +0000)]
Foundation for call frame information.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27491
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 7 Apr 2006 16:21:59 +0000 (16:21 +0000)]
THis -> This
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27490
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 7 Apr 2006 16:07:37 +0000 (16:07 +0000)]
For PR723:
Configure with the --enable-optimized and --enable-assertions option to
ensure that binary RPM packages are built with the options required by the
feature request.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27489
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 7 Apr 2006 16:06:18 +0000 (16:06 +0000)]
For PR723:
1. Don't force debug builds to have assertion checking turned on always.
Let the default (on) be taken, or overridden by the command line
2. Create two new BuildModes based on assertion checking: Release+Assert
and Debug-Assert.
3. Ensure that when building a distribution we get a release build with
assertions enabled, regardless of the tree's configuration.
4. (unrelated) Fix library name generation for llvm-config usage.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27488
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 7 Apr 2006 16:01:51 +0000 (16:01 +0000)]
For PR723:
Support detection of a "CVS" directory at configure time to distinguish
whether this is a release build or a "from tree" build. This knowledge is
used to set the defaults for --enable-optimzied and --enable-assertions
options.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27487
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 7 Apr 2006 15:59:41 +0000 (15:59 +0000)]
For PR723:
- Provide for the include of ENABLE_ASSERTIONS flag from the configuration.
- Enhance the documentation for ENABLE_OPTIMIZED
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27486
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 7 Apr 2006 15:58:18 +0000 (15:58 +0000)]
For PR723:
Print out something at the end of the build that indicates what kind of
build has just completed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27485
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 7 Apr 2006 15:55:18 +0000 (15:55 +0000)]
Ignore stuff built by "make dist".
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27484
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 7 Apr 2006 08:31:56 +0000 (08:31 +0000)]
A saner workaround. I hope.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27483
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 7 Apr 2006 08:10:09 +0000 (08:10 +0000)]
Temporary workaround for a Mac OSX specific issue.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27482
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 7 Apr 2006 05:35:45 +0000 (05:35 +0000)]
Added more shuffle tests
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27481
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 7 Apr 2006 05:00:02 +0000 (05:00 +0000)]
We have an assertion that checks that we do not encode null values into the
.bc file if they are supposed to be implicit. This is cool, except that it
checked *after* constant expr folding: improving constant expr folding could
cause the .bc reader to assert out on old .bc files. Move the check so that
it checks all simple constants, but no constantexprs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27480
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 7 Apr 2006 04:44:06 +0000 (04:44 +0000)]
Constant fold extractelement(zero, x) -> zero
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27479
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 7 Apr 2006 04:41:03 +0000 (04:41 +0000)]
Fix inlining of insert/extract element constantexprs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27478
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 7 Apr 2006 01:27:42 +0000 (01:27 +0000)]
Add code to RemapOperand() to handle Instruction::ExtractElement and
Instruction::InsertElement.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27477
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 6 Apr 2006 23:53:29 +0000 (23:53 +0000)]
A MOVPS2SSmr, i.e. _mm_store_ss, encoding bug.
Also MOVPDI2DIrr.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27476
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 6 Apr 2006 23:25:41 +0000 (23:25 +0000)]
Remove int_x86_sse_loadh_ps and int_x86_sse_loadl_ps. These are now lowered
by the frontend to shuffles.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27475
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 6 Apr 2006 23:23:56 +0000 (23:23 +0000)]
- movlp{s|d} and movhp{s|d} support.
- Normalize shuffle nodes so result vector lower half elements come from the
first vector, the rest come from the second vector. (Except for the
exceptions :-).
- Other minor fixes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27474
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 6 Apr 2006 23:21:24 +0000 (23:21 +0000)]
New entries.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27473
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 6 Apr 2006 23:20:43 +0000 (23:20 +0000)]
1. If both vector operands of a vector_shuffle are undef, turn it into an undef.
2. A shuffle mask element can also be an undef.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27472
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Thu, 6 Apr 2006 23:18:45 +0000 (23:18 +0000)]
This may be overconservative, but it lets the new cfe compile
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27471
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 6 Apr 2006 23:16:19 +0000 (23:16 +0000)]
Add an item
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27470
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 6 Apr 2006 23:12:19 +0000 (23:12 +0000)]
Make sure to return the result in the right type.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27469
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Thu, 6 Apr 2006 22:58:58 +0000 (22:58 +0000)]
Move this to lib/Analysis.
This reduces Core size, yay.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27468
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 6 Apr 2006 22:28:36 +0000 (22:28 +0000)]
Match vpku[hw]um(x,x).
Convert vsldoi(x,x) to work the same way other (x,x) cases work.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27467
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 6 Apr 2006 22:27:59 +0000 (22:27 +0000)]
Add testcases for vpku[hw]um(x,x)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27466
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 6 Apr 2006 22:22:08 +0000 (22:22 +0000)]
Add the variable llvmgccmajvers to the site.exp file. This will contain
the major version number of llvm-gcc, as configured.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27465
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 6 Apr 2006 22:15:51 +0000 (22:15 +0000)]
Avoid building the runtime libraries if llvm-gcc version 4 is detected.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27464
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 6 Apr 2006 22:02:42 +0000 (22:02 +0000)]
Add support for matching vmrg(x,x) patterns
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27463
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 6 Apr 2006 22:02:11 +0000 (22:02 +0000)]
Add vmrg(x,x) tests
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27462
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 6 Apr 2006 22:00:36 +0000 (22:00 +0000)]
For support of new GCC v4, obtain the full and major versions of the
llvm-gcc command. This will help distinguish which version is being used
so the makefiles can accommodate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27461
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Thu, 6 Apr 2006 21:26:32 +0000 (21:26 +0000)]
fix some linking problems with the new gcc
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27460
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 6 Apr 2006 21:19:37 +0000 (21:19 +0000)]
Add tests for vmrg[hl]*
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27459
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 6 Apr 2006 21:12:48 +0000 (21:12 +0000)]
These intrinsics are now lowered by the FE.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27458
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 6 Apr 2006 21:11:54 +0000 (21:11 +0000)]
Pattern match vmrg* instructions, which are now lowered by the CFE into shuffles.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27457
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 6 Apr 2006 20:36:51 +0000 (20:36 +0000)]
Infer element types for shuffle masks
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27456
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 6 Apr 2006 20:19:52 +0000 (20:19 +0000)]
rename a method, to avoid confusion with llvm intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27455
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 6 Apr 2006 19:21:02 +0000 (19:21 +0000)]
test vperm promotion
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27454
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 6 Apr 2006 19:19:38 +0000 (19:19 +0000)]
remove two done items
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27453
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 6 Apr 2006 19:19:17 +0000 (19:19 +0000)]
Lower vperm(x,y, mask) -> shuffle(x,y,mask) if mask is constant. This allows
us to compile oh-so-realistic stuff like this:
vec_vperm(A, B, (vector unsigned char){14});
to:
vspltb v0, v0, 14
instead of:
vspltisb v0, 14
vperm v0, v2, v1, v0
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27452
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 6 Apr 2006 18:29:17 +0000 (18:29 +0000)]
this is no longer an intrinsic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27451
91177308-0d34-0410-b5e6-
96231b3b80d8