Andrew Trick
c4703f6ea1
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.
llvm-svn: 127342
2011-03-09 17:29:58 +00:00
Jan Sjödin
7962eba596
Add InitializeNativeAsmParser function.
...
llvm-svn: 127341
2011-03-09 17:25:46 +00:00
Andrew Trick
de565b0456
whitespace
...
llvm-svn: 127340
2011-03-09 17:23:39 +00:00
Benjamin Kramer
4cf03850a2
Fix typo, make helper static.
...
llvm-svn: 127335
2011-03-09 16:19:12 +00:00
Oscar Fuentes
055061677e
Process some link components that map to other expandable components
...
before the main loop. This is necessary because the loop ignores the
items added to `link_components' after it is entered.
llvm-svn: 127333
2011-03-09 14:44:46 +00:00
Benjamin Kramer
782cb6d68d
Remove unused virtual dtor.
...
llvm-svn: 127331
2011-03-09 14:20:28 +00:00
NAKAMURA Takumi
fe84f8672a
Target/X86: Tweak va_arg for Win64 not to miss taking va_start when number of fixed args > 4.
...
llvm-svn: 127328
2011-03-09 11:33:15 +00:00
NAKAMURA Takumi
2d598805e0
Makefile.rules: [PR2928] "make install" may install include files along explicit pattern, not to install CMake's building stuff.
...
llvm-svn: 127325
2011-03-09 09:11:27 +00:00
Nick Lewycky
c2b564b36f
Fix two cases I forgot to update when doing a mental "getSwappedPredicate".
...
Thanks Duncan Sands!
llvm-svn: 127323
2011-03-09 08:20:06 +00:00
Cameron Zwarich
573c518b3d
Add a test case for r127320.
...
llvm-svn: 127321
2011-03-09 08:11:02 +00:00
Cameron Zwarich
90efa03e8b
Fix a crasher introduced by r127317 that is seen on the bots when using an
...
alloca as both integer and floating-point vectors of the same size. Bugpoint is
not cooperating with me, but I'll try to find a manual testcase tomorrow.
llvm-svn: 127320
2011-03-09 07:34:11 +00:00
Nick Lewycky
485af203fc
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!
llvm-svn: 127318
2011-03-09 06:26:03 +00:00
Cameron Zwarich
e0b4705b03
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>.
llvm-svn: 127317
2011-03-09 05:43:05 +00:00
Cameron Zwarich
e80c47f295
Move vector type merging to a separate function in preparation for it getting
...
more complicated.
llvm-svn: 127316
2011-03-09 05:43:01 +00:00
Stuart Hastings
6147bc81c3
Add a RUN line to the test case to make it functional. <rdar://problem/9055247>
...
llvm-svn: 127312
2011-03-09 04:02:40 +00:00
Matt Beaumont-Gay
3e3b6cc819
Add a virtual dtor to Delegate to silence -Wnon-virtual-dtor
...
llvm-svn: 127311
2011-03-09 04:02:15 +00:00
Stuart Hastings
59f1daeb32
Test cases for r127309. <rdar://problem/9055247>
...
llvm-svn: 127310
2011-03-09 03:59:52 +00:00
Bill Wendling
bb2661c5cc
Build bots hate me.
...
llvm-svn: 127307
2011-03-09 01:37:39 +00:00
Eli Friedman
50311331a7
PR9346: Prevent SimplifyDemandedBits from incorrectly introducing
...
INT_MIN % -1.
llvm-svn: 127306
2011-03-09 01:28:35 +00:00
Bill Wendling
613c8c2fd4
Testcase for r127301.
...
llvm-svn: 127304
2011-03-09 01:05:00 +00:00
Jakob Stoklund Olesen
eec325fc2f
Add a LiveRangeEdit::Delegate protocol.
...
This will we used for keeping register allocator data structures up to date
while LiveRangeEdit is trimming live intervals.
llvm-svn: 127300
2011-03-09 00:57:29 +00:00
Eli Friedman
d1e9ff0d6c
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.
llvm-svn: 127299
2011-03-09 00:48:33 +00:00
Eric Christopher
3ffd0d2f15
Fix testcase.
...
llvm-svn: 127298
2011-03-09 00:41:41 +00:00
Bill Wendling
68934338ab
* Correct encoding for VSRI.
...
* Add tests for VSRI and VSLI.
llvm-svn: 127297
2011-03-09 00:33:17 +00:00
Jakob Stoklund Olesen
7905ed6549
Delete dead code.
...
llvm-svn: 127295
2011-03-09 00:07:39 +00:00
Bill Wendling
b790c462c0
Correct the encoding for VRSRA and VSRA instructions.
...
llvm-svn: 127294
2011-03-09 00:00:35 +00:00
Bill Wendling
ab9f04b6d8
* Fix VRSHR and VSHR to have the correct encoding for the immediate.
...
* Update the NEON shift instruction test to expect what 'as' produces.
llvm-svn: 127293
2011-03-08 23:48:09 +00:00
Jakob Stoklund Olesen
b8f5f15468
Delete dead code after rematerializing.
...
LiveRangeEdit::eliminateDeadDefs() will eventually be used by coalescing,
splitting, and spilling for dead code elimination. It can delete chains of dead
instructions as long as there are no dependency loops.
llvm-svn: 127287
2011-03-08 22:46:11 +00:00
Devang Patel
2f204229ef
llvm.dbg.declare intrinsic does not use any llvm::Values. It's magic!
...
llvm-svn: 127282
2011-03-08 22:12:11 +00:00
Stuart Hastings
5687e4d065
Reverting testcase at 4126896; r126672 broke something else. <rdar://problem/9055247>
...
llvm-svn: 127278
2011-03-08 21:54:17 +00:00
Bill Wendling
72b82228cd
Once again try to appease the buildbot gods.
...
llvm-svn: 127272
2011-03-08 21:36:29 +00:00
Benjamin Kramer
c3944efb6f
Strip cruft.
...
llvm-svn: 127269
2011-03-08 20:19:10 +00:00
Eric Christopher
1be4747d53
Add a testcase for r127263.
...
llvm-svn: 127266
2011-03-08 19:49:15 +00:00
Bill Wendling
75b38b9d40
Try to fix the compilation error due to type incombatibility.
...
llvm-svn: 127265
2011-03-08 19:39:35 +00:00
Jakob Stoklund Olesen
b7aa589217
Fix the build for MSVC 9 whose upper_bound() wants to compare elements in the sorted array.
...
Patch by Olaf Krzikalla!
llvm-svn: 127264
2011-03-08 19:37:54 +00:00
Eric Christopher
d3c7e834e8
Fix some latent bugs if the nodes are unschedulable. We'd gotten away
...
with this before since none of the register tracking or nightly tests
had unschedulable nodes.
This should probably be refixed with a special default Node that just
returns some "don't touch me" values.
Fixes PR9427
llvm-svn: 127263
2011-03-08 19:35:47 +00:00
Stuart Hastings
f4420e43f1
Stop building PPC parts on OSX. Radar 8637926.
...
llvm-svn: 127262
2011-03-08 19:28:28 +00:00
Oscar Fuentes
3faa2722ef
Revert "Make a comparator's argument `const'. This fixes the build for
...
MSVC 9."
The "fix" was meaningless.
This reverts commit r127245.
llvm-svn: 127260
2011-03-08 19:26:21 +00:00
Jim Grosbach
bdf8053571
Darwin 'as' silently ignores the '.ident' directive.
...
llvm-svn: 127258
2011-03-08 19:17:19 +00:00
John McCall
7ae7882159
Typo. Patch by arrowdodger.
...
llvm-svn: 127256
2011-03-08 18:01:22 +00:00
Benjamin Kramer
872abcc8a9
Reduce vector reallocations.
...
llvm-svn: 127254
2011-03-08 17:28:36 +00:00
Chris Lattner
ea7b7189f5
fix incorrect comment.
...
llvm-svn: 127252
2011-03-08 16:59:03 +00:00
Devang Patel
8108b711d9
Since last couple of days, argument number is encoded using 8 bits from line number field in argument's debug info.
...
llvm-svn: 127250
2011-03-08 16:29:40 +00:00
Devang Patel
21033e45be
Update DILexicalBlock doc to mention new fields.
...
llvm-svn: 127249
2011-03-08 16:25:29 +00:00
Benjamin Kramer
d5782492c8
X86: Fix the (saddo/ssub x, 1) -> incl/decl selection to check the right operand for 1.
...
Found by inspection.
llvm-svn: 127247
2011-03-08 15:20:20 +00:00
Justin Holewinski
d7426856e9
PTX: Add intrinsic support for ntid, ctaid, and nctaid registers
...
llvm-svn: 127246
2011-03-08 14:10:18 +00:00
Oscar Fuentes
27fc386e64
Make a comparator's argument `const'. This fixes the build for MSVC 9.
...
llvm-svn: 127245
2011-03-08 13:52:07 +00:00
Oscar Fuentes
2743931876
Remove remnant of my experimentation with CMake.
...
llvm-svn: 127244
2011-03-08 13:30:52 +00:00
Duncan Sands
41075b3ffb
Fix PR9331. Simplified version of a patch by Jakub Staszak.
...
llvm-svn: 127243
2011-03-08 12:39:03 +00:00
NAKAMURA Takumi
e2f4b8d70e
lib/Support/regcomp.c: Fix cygwin warning.
...
llvm-svn: 127241
2011-03-08 12:25:29 +00:00