Dan Gohman
f6572d0aa2
Generalize LCSSA to handle loops with exits with predecessors outside
...
the loop. This is needed because with indirectbr it may not be possible
for LoopSimplify to guarantee that all loop exit predecessors are
inside the loop. This fixes PR5437.
LCCSA no longer actually requires LoopSimplify form, but for now it
must still have the dependency because the PassManager doesn't know
how to schedule LoopSimplify otherwise.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86569 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 18:28:24 +00:00
Dan Gohman
d146e986c8
Fix an 80-column violation.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86567 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 18:20:38 +00:00
Dan Gohman
81d893ccf2
Minor tidiness fixes.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86565 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 18:19:43 +00:00
Dan Gohman
28a4c78621
Constify MachineFunctionAnalysis' TargetMachine reference.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86564 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 18:18:49 +00:00
Dan Gohman
1edb8e0910
Fix a comment.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86558 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 17:06:51 +00:00
Dan Gohman
9d51c972c1
Suppress implicit copy ctor and copy assignment for MachineFunction.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86557 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 17:06:23 +00:00
Daniel Dunbar
75657ade45
Use ',' separation in XFAILs, lit doesn't evaluate them as regexs (easy to add,
...
but might as well use the more standard syntax).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86553 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 16:38:15 +00:00
Nuno Lopes
95a3be0ba4
add zextOrTrunc and sextOrTrunc methods, that are similar to the ones in APInt
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86549 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 15:36:28 +00:00
Jim Grosbach
43cca695a8
Work around assembler not recognizing #0.0 form immediate for vmcp
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86548 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 15:27:51 +00:00
Oscar Fuentes
6a660d4a43
CMake: Detect gv, circo, twopi, neato, fdo, dot and dotty.
...
Patch by Arnaud Allard de Grandmaison!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86547 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 15:26:40 +00:00
Xerxes Ranby
5aa638d8f7
Make lib/Support/Debug.cpp SetCurrentDebugType implementation part of llvm namespace to match function declaration in Debug.h.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86544 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 14:50:34 +00:00
Bruno Cardoso Lopes
b8e0ebf034
Fix PR5149.
...
http://llvm.org/bugs/show_bug.cgi?id=5149
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86543 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 14:27:49 +00:00
Chris Lattner
47fc9d3366
make this handle redefinition of malloc with different prototype correctly.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86525 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 07:12:01 +00:00
Chris Lattner
7e606e2e98
if a 'with overflow' intrinsic just has the normal result used, simplify
...
it to a normal binop. Patch by Alastair Lynn, testcase by me.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86524 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 07:07:56 +00:00
Evan Cheng
df8ed02473
Hide a couple of options.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86522 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 06:49:37 +00:00
Evan Cheng
63040ce858
80 col.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86521 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 06:49:22 +00:00
Chris Lattner
74965f2279
fix PR5104: when printing a single character, return the result of
...
putchar in case there is an error.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86515 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 04:57:04 +00:00
Chris Lattner
0dd3b7645b
fix some bogus asserts, PR5049
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86514 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 04:47:27 +00:00
Chris Lattner
570a0b8d74
random tidy
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86511 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 04:18:23 +00:00
Chris Lattner
49e27a5375
remove a redundant printout, LinkInArchive prints this as well.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86510 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 04:15:28 +00:00
Chris Lattner
dd21a1cba4
enhance PHI slicing to handle the case when a slicable PHI is begin
...
used by a chain of other PHIs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86503 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 01:38:00 +00:00
Owen Anderson
b0acf66bf9
Small cleanups.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86499 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 00:48:15 +00:00
Owen Anderson
b05a1d116f
Revert my previous patch to ABCD and fix things the right way. There are two problems addressed
...
here:
1) We need to avoid processing sigma nodes as phi nodes for constraint generation.
2) We need to generate constraints for comparisons against constants properly.
This includes our first working ABCD test!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86498 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 00:44:44 +00:00
Chris Lattner
e7e63fe965
comment typos pointed out by Duncan
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86497 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 00:41:49 +00:00
Jim Grosbach
e5165490b7
Use Unified Assembly Syntax for the ARM backend.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86494 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-09 00:11:35 +00:00
Owen Anderson
9feeeaf9ed
Fix an issue where the ordering of blocks within a function could lead to different constraint
...
graphs being produced. The cause was that we were incorrectly marking sigma instructions as
processed after handling the sigma-specific constraints for them, potentially neglecting to
process them as normal instructions as well.
Unfortunately, the testcase that inspired this still doesn't work because of a bug in the solver,
which is next on the list to debug.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86486 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 22:36:55 +00:00
Daniel Dunbar
7e3089d3c6
Add a 'zkill' script, which is more-or-less a fancy (although not necessarily
...
very robust) version of killall. Because I like making shiny new wheels out of
spare parts.
For use by buildbots when people insist on making cc1 infinite loop. :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86484 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 21:51:53 +00:00
Chris Lattner
bf382b5f74
Teach an instcombine to not pull trunc instructions through PHI nodes
...
when both the source and dest are illegal types, since it would cause
the phi to grow (for example, we shouldn't transform test14b's phi to
a phi on i320). This fixes an infinite loop on i686 bootstrap with
phi slicing turned on, so turn it back on.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86483 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 21:20:06 +00:00
Duncan Sands
68d29d09c6
Revert commit 81144, and add a comment. It caused bugpoint timeouts
...
not to work any more on linux.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86481 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 20:55:48 +00:00
Chris Lattner
9956c056c1
reapply r8644[3-5] with only the scary part
...
(SliceUpIllegalIntegerPHI) disabled.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86480 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 19:23:30 +00:00
Daniel Dunbar
d11a7c3b03
Speculatively revert r8644[3-5], they seem to be leading to infinite loops in
...
llvm-gcc bootstrap.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86478 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 17:52:47 +00:00
Anton Korobeynikov
f0b47b7f6d
Add and-not (bic) patterns. Based heavily on patch by Brian Lucas!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86471 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 15:33:12 +00:00
Anton Korobeynikov
830fe7bc2d
Move OR patterns upper to all logical stuff. No functionality change.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86470 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 15:32:44 +00:00
Anton Korobeynikov
ff2c186d59
Some nice peephole patterns. Based on patch by Brian Lucas!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86469 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 15:32:28 +00:00
Anton Korobeynikov
764cfaabd2
Print tab before operand of jcc
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86468 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 15:32:11 +00:00
Anton Korobeynikov
52f28e9b63
Fix invalid operand updates & implement post-inc memory operands
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86466 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 14:27:38 +00:00
Anton Korobeynikov
773943ac5c
Throw an error when stack realignment stuff fails instead of silent
...
code miscompilation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86463 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 12:58:40 +00:00
Anton Korobeynikov
c2fd919ea2
It is invalid to infer the value type from the result #0 of the node
...
since the instruction might use the other result of different type.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86462 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 12:14:54 +00:00
Daniel Dunbar
d702c8c980
Remove ByteswapSCANFResults, it is dead.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86458 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 09:46:57 +00:00
Daniel Dunbar
539e187acb
NNT: Remove DejaGNU test from NewNightlyTest reports, this aspect of testing is
...
handled by buildbots now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86454 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 09:34:14 +00:00
Daniel Dunbar
4080d10b4b
Two small fixes for site.exp for cmake.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86453 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 09:29:52 +00:00
Daniel Dunbar
5ed7be1a40
Derive the right paths to use during testing instead of passing it in via make.
...
Also, fix a few other details of the cmake test target and rename it to
'check'. CMake tests now work for the most part, but there are a handful of
failures left due to missing site.exp bits.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86452 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 09:08:00 +00:00
Daniel Dunbar
fb4fb6ddb0
Switch to using 'lit.site.cfg.in' for the site config template for Unit tests,
...
and generate it for CMake builds as well.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86451 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 09:07:51 +00:00
Daniel Dunbar
16bc8783c9
Cleanup some unused RUN lines.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86450 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 09:07:42 +00:00
Daniel Dunbar
bf477df346
lit: Hardcode whence seek value, os.SEEK_END isn't always available.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86449 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 09:07:33 +00:00
Daniel Dunbar
1bf013904f
lit: Warn when a test suite contains no tests.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86448 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 09:07:26 +00:00
Daniel Dunbar
ee504b8cd7
lit: Drop require_and_and support.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86447 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 09:07:13 +00:00
Lang Hames
16dcaf5996
Moved some ManagedStatics out of the SlotIndexes header.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86446 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 08:49:59 +00:00
Chris Lattner
ce306a450f
another more interesting test.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86445 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 08:36:40 +00:00
Chris Lattner
04ab669d0b
feature test for the new transformation in r86443
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86444 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 08:30:58 +00:00