Che-Liang Chiou
2f5565d21c
ptx: add the rest of special registers of ISA version 2.0
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127397 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-10 04:05:57 +00:00
Stuart Hastings
03d5826164
Revert 127359; it broke lencod.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127382 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-10 00:25:53 +00:00
Daniel Dunbar
edfab0ca1e
Revert "Re-enable test and hope to silence the buildbots", still broken.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127369 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 22:48:46 +00:00
Benjamin Kramer
7bff3e7c1b
Fix mistyped CHECK lines.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127366 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 22:07:31 +00:00
Stuart Hastings
167831dcac
Tweak test to work on Linux.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127364 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 21:35:10 +00:00
Stuart Hastings
2f5443be11
Disable this test temporarily to reduce BuildBot complaints.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127363 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 21:33:47 +00:00
Devang Patel
a2ab3999ed
Preserve line number information while simplifying libcalls.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127362 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 21:27:52 +00:00
Stuart Hastings
2f26fa4838
X86 byval copies no longer always_inline. <rdar://problem/8706628>
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127359 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 21:10:30 +00:00
Bruno Cardoso Lopes
842db07c61
Add a testcase for the addc improvements introduced some commits ago. Patch by Akira Hatanaka
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127358 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 21:05:32 +00:00
Bruno Cardoso Lopes
2c19ed9d67
Re-enable test and hope to silence the buildbots
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127357 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 21:00:16 +00:00
Bruno Cardoso Lopes
557ce71ec9
try to make o32 cc tests less specific to silence some buildbots. The test isn't enabled yet, this is will be done in a subsequent commit. Patch by Akira Hatanaka.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127356 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 20:59:05 +00:00
Johnny Chen
18b475f954
LLVM combines the offset mode of A8.6.199 A1 & A2 into STRBT.
...
The insufficient encoding information of the combined instruction confuses the decoder wrt
UQADD16. Add extra logic to recover from that.
Fixed an assert reported by Sean Callanan
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127354 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 20:01:14 +00:00
Jakob Stoklund Olesen
5d96e5a1cc
Make physreg coalescing independent on the number of uses of the virtual register.
...
The damage done by physreg coalescing only depends on the number of instructions
the extended physreg live range covers. This fixes PR9438.
The heuristic is still luck-based, and physreg coalescing really should be
disabled completely. We need a register allocator with better hinting support
before that is possible.
Convert a test to FileCheck and force spilling by inserting an extra call. The
previous spilling behavior was dependent on misguided physreg coalescing
decisions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127351 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 19:27:06 +00:00
Jakob Stoklund Olesen
dda386c44d
Delete a test case that is very sensitive to coalescer behavior.
...
The test is derived from an old miscompilation of
MultiSource/Benchmarks/VersaBench/8b10b which is run regularly, so we are not
losing coverage.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127350 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 19:27:02 +00:00
Bruno Cardoso Lopes
954dac0f88
Improve varags handling, with testcases. Patch by Sasa Stankovic
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127349 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 19:22:22 +00:00
Andrew Trick
5d332e0c3e
This test case should work with list-ilp or list-burr.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127348 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 19:17:10 +00:00
Andrew Trick
e62289b98f
When SCEV can determine the loop test is X < X, set ExactBECount=0.
...
When ExactBECount is a constant, use it for MaxBECount.
When MaxBECount cannot be computed, replace it with ExactBECount.
Fixes PR9424.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127342 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 17:29:58 +00:00
NAKAMURA Takumi
3ca99435e9
Target/X86: Tweak va_arg for Win64 not to miss taking va_start when number of fixed args > 4.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127328 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 11:33:15 +00:00
Cameron Zwarich
35e5475062
Add a test case for r127320.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127321 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 08:11:02 +00:00
Nick Lewycky
84dd4fa2e3
Add another micro-optimization. Apologies for the lack of refactoring, but I
...
gave up when I realized I couldn't come up with a good name for what the
refactored function would be, to describe what it does.
This is PR9343 test12, which is test3 with arguments reordered. Whoops!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127318 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 06:26:03 +00:00
Cameron Zwarich
b2fd770136
Add support to scalar replacement for partial vector accesses of an alloca, e.g.
...
a union of a float, <2 x float>, and <4 x float>. This mostly comes up with the
use of vector intrinsics, especially in NEON when programmers know the layout of
the register file. This enables codegen to eliminate a lot of the subregister
traffic it would otherwise generate.
This commit only enables this for a small number of floating-point cases, but a
lot more integer cases. I assume this is okay for all ports, but I did not do
extensive testing of the quality of code involving i512 vectors and the like. If
there is a use case where this generates worse code than before, let me know and
we can scale it back.
This fixes <rdar://problem/9036264>.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127317 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 05:43:05 +00:00
Stuart Hastings
46033b0be1
Add a RUN line to the test case to make it functional. <rdar://problem/9055247>
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127312 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 04:02:40 +00:00
Stuart Hastings
ee0b7f4e09
Test cases for r127309. <rdar://problem/9055247>
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127310 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 03:59:52 +00:00
Bill Wendling
92ad5175fa
Build bots hate me.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127307 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 01:37:39 +00:00
Eli Friedman
c6b018b737
PR9346: Prevent SimplifyDemandedBits from incorrectly introducing
...
INT_MIN % -1.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127306 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 01:28:35 +00:00
Bill Wendling
d7f3e7d046
Testcase for r127301.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127304 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 01:05:00 +00:00
Eli Friedman
2adc5b6a17
PR9420; an instruction before an unreachable is guaranteed not to have any
...
reachable uses, but there still might be uses in dead blocks. Use the
standard solution of replacing all the uses with undef. This is
a rare case because it's very sensitive to phase ordering in SimplifyCFG.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127299 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 00:48:33 +00:00
Eric Christopher
e11128dd9d
Fix testcase.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127298 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 00:41:41 +00:00
Bill Wendling
620d0cc7ac
* Correct encoding for VSRI.
...
* Add tests for VSRI and VSLI.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127297 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 00:33:17 +00:00
Bill Wendling
c04a9dea78
Correct the encoding for VRSRA and VSRA instructions.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127294 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 00:00:35 +00:00
Bill Wendling
7c6b608a7c
* Fix VRSHR and VSHR to have the correct encoding for the immediate.
...
* Update the NEON shift instruction test to expect what 'as' produces.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127293 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-08 23:48:09 +00:00
Stuart Hastings
19ba42eda2
Reverting testcase at 4126896; r126672 broke something else. <rdar://problem/9055247>
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127278 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-08 21:54:17 +00:00
Bill Wendling
93f017648d
Once again try to appease the buildbot gods.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127272 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-08 21:36:29 +00:00
Benjamin Kramer
e5ef311ee3
Strip cruft.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127269 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-08 20:19:10 +00:00
Eric Christopher
2b24e7f3df
Add a testcase for r127263.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127266 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-08 19:49:15 +00:00
Bill Wendling
230b08322d
Try to fix the compilation error due to type incombatibility.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127265 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-08 19:39:35 +00:00
Benjamin Kramer
c175a4bd7e
X86: Fix the (saddo/ssub x, 1) -> incl/decl selection to check the right operand for 1.
...
Found by inspection.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127247 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-08 15:20:20 +00:00
Justin Holewinski
c6f24f4086
PTX: Add intrinsic support for ntid, ctaid, and nctaid registers
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127246 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-08 14:10:18 +00:00
Duncan Sands
606199fb85
Fix PR9331. Simplified version of a patch by Jakub Staszak.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127243 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-08 12:39:03 +00:00
NAKAMURA Takumi
027248567b
Reapply r127073(partially): Introduce $(ECHOPATH) to print DOSish path string on MSYS bash for alternative of $(ECHO).
...
On mingw and python/w32, lit would not be expected to understand MSYS-style path.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127239 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-08 12:25:10 +00:00
Bill Wendling
caa5a5dedb
Testcase for r127187.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127236 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-08 10:27:58 +00:00
Devang Patel
290342a157
While sinking an instruction, do not lose llvm.dbg.value intrinsic.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127214 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-08 03:06:19 +00:00
Bill Wendling
591432136c
A few more tests for instruction encodings.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127209 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-08 02:51:48 +00:00
Eric Christopher
7c2cdb1c05
Turn on list-ilp scheduling by default on x86 and x86-64, fix up
...
testcases accordingly. Some are currently xfailed and will be filed
as bugs to be fixed or understood.
Performance results:
roughly neutral on SPEC
some micro benchmarks in the llvm suite are up between 100 and 150%, only
a pair of regressions that are due to be investigated
john-the-ripper saw:
10% improvement in traditional DES
8% improvement in BSDI DES
59% improvement in FreeBSD MD5
67% improvement in OpenBSD Blowfish
14% improvement in LM DES
Small compile time impact.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127208 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-08 02:42:25 +00:00
Bob Wilson
79f56c9618
Fix a compiler crash where a Glue value had multiple uses. Radar 9049552.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127198 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-08 01:17:20 +00:00
Bill Wendling
3116dce338
Rename the narrow shift right immediate operands to "shr_imm*" operands. Also
...
expand the testing of the narrowing shift right instructions.
No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127193 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-07 23:38:41 +00:00
Devang Patel
cd77a50e63
Preserve line no. info.
...
Radar 9097659
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127182 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-07 22:43:45 +00:00
Rafael Espindola
e390b3245f
Add test for r127138.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127172 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-07 21:28:14 +00:00
Nick Lewycky
bf433e5f46
Tweak this test. We can analyze what happens and show that we still do the
...
right thing, instead of merely being unable to analyze and the transform
doesn't occur.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127149 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-07 02:10:18 +00:00
Nick Lewycky
c14bc77315
Add more analysis of the sign bit of an srem instruction. If the LHS is negative
...
then the result could go either way. If it's provably positive then so is the
srem. Fixes PR9343 #7 !
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127146 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-07 01:50:10 +00:00