1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 04:02:41 +01:00
Commit Graph

53900 Commits

Author SHA1 Message Date
Dan Gohman
6780148e20 Default-addressspace null pointers don't alias anything. This allows
GVN to be more aggressive. Patch by Hans Wennborg! (with a comment added by me)

llvm-svn: 86582
2009-11-09 19:29:11 +00:00
David Goodwin
2c17fdab6d Fix dependencies added to model memory aliasing for post-RA scheduling. The dependencies were overly conservative for memory access that are known not to alias.
llvm-svn: 86580
2009-11-09 19:22:17 +00:00
Dan Gohman
b696ff22f7 The inbounds keyword isn't relevant to overindexing of
static array types. Thanks to Duncan for pointing this out!

llvm-svn: 86576
2009-11-09 19:01:53 +00:00
Dan Gohman
7010cad26a Fix a comment in a typo that Duncan noticed.
llvm-svn: 86575
2009-11-09 18:59:22 +00:00
Dan Gohman
e2afe7c1c7 Remove the "special case" for zero-length arrays, and rephrase this
paragraph to be more precise.

llvm-svn: 86572
2009-11-09 18:40:39 +00:00
Dan Gohman
457b8bad4e 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.

llvm-svn: 86569
2009-11-09 18:28:24 +00:00
Dan Gohman
141625abc4 Fix an 80-column violation.
llvm-svn: 86567
2009-11-09 18:20:38 +00:00
Dan Gohman
68d528963c Minor tidiness fixes.
llvm-svn: 86565
2009-11-09 18:19:43 +00:00
Dan Gohman
8ef26198d2 Constify MachineFunctionAnalysis' TargetMachine reference.
llvm-svn: 86564
2009-11-09 18:18:49 +00:00
Dan Gohman
662f54fd6e Fix a comment.
llvm-svn: 86558
2009-11-09 17:06:51 +00:00
Dan Gohman
c194ec89ca Suppress implicit copy ctor and copy assignment for MachineFunction.
llvm-svn: 86557
2009-11-09 17:06:23 +00:00
Daniel Dunbar
e4f2bab2cd Use ',' separation in XFAILs, lit doesn't evaluate them as regexs (easy to add,
but might as well use the more standard syntax).

llvm-svn: 86553
2009-11-09 16:38:15 +00:00
Nuno Lopes
5b15b50af4 add zextOrTrunc and sextOrTrunc methods, that are similar to the ones in APInt
llvm-svn: 86549
2009-11-09 15:36:28 +00:00
Jim Grosbach
5b33ce12e3 Work around assembler not recognizing #0.0 form immediate for vmcp
llvm-svn: 86548
2009-11-09 15:27:51 +00:00
Oscar Fuentes
b05535f7c5 CMake: Detect gv, circo, twopi, neato, fdo, dot and dotty.
Patch by Arnaud Allard de Grandmaison!

llvm-svn: 86547
2009-11-09 15:26:40 +00:00
Xerxes Ranby
57e81f28c1 Make lib/Support/Debug.cpp SetCurrentDebugType implementation part of llvm namespace to match function declaration in Debug.h.
llvm-svn: 86544
2009-11-09 14:50:34 +00:00
Bruno Cardoso Lopes
8bedc8bf3b Fix PR5149.
http://llvm.org/bugs/show_bug.cgi?id=5149

llvm-svn: 86543
2009-11-09 14:27:49 +00:00
Chris Lattner
91fe2102eb make this handle redefinition of malloc with different prototype correctly.
llvm-svn: 86525
2009-11-09 07:12:01 +00:00
Chris Lattner
f2b3c795fd if a 'with overflow' intrinsic just has the normal result used, simplify
it to a normal binop.  Patch by Alastair Lynn, testcase by me.

llvm-svn: 86524
2009-11-09 07:07:56 +00:00
Evan Cheng
e3acd9adb5 Hide a couple of options.
llvm-svn: 86522
2009-11-09 06:49:37 +00:00
Evan Cheng
4cd6cb4137 80 col.
llvm-svn: 86521
2009-11-09 06:49:22 +00:00
Chris Lattner
aaa7706cd5 fix PR5104: when printing a single character, return the result of
putchar in case there is an error.

llvm-svn: 86515
2009-11-09 04:57:04 +00:00
Chris Lattner
a8847d8409 fix some bogus asserts, PR5049
llvm-svn: 86514
2009-11-09 04:47:27 +00:00
Chris Lattner
6c38ec917d random tidy
llvm-svn: 86511
2009-11-09 04:18:23 +00:00
Chris Lattner
c7f4a1df29 remove a redundant printout, LinkInArchive prints this as well.
llvm-svn: 86510
2009-11-09 04:15:28 +00:00
Chris Lattner
5a3a41a757 enhance PHI slicing to handle the case when a slicable PHI is begin
used by a chain of other PHIs.

llvm-svn: 86503
2009-11-09 01:38:00 +00:00
Owen Anderson
bbbb62a090 Small cleanups.
llvm-svn: 86499
2009-11-09 00:48:15 +00:00
Owen Anderson
7ac0e198c3 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!

llvm-svn: 86498
2009-11-09 00:44:44 +00:00
Chris Lattner
fe6b17a13a comment typos pointed out by Duncan
llvm-svn: 86497
2009-11-09 00:41:49 +00:00
Jim Grosbach
ea6c9c17f5 Use Unified Assembly Syntax for the ARM backend.
llvm-svn: 86494
2009-11-09 00:11:35 +00:00
Owen Anderson
045615edfb 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.

llvm-svn: 86486
2009-11-08 22:36:55 +00:00
Daniel Dunbar
c5f49f8e59 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. :)

llvm-svn: 86484
2009-11-08 21:51:53 +00:00
Chris Lattner
6c67b00026 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.

llvm-svn: 86483
2009-11-08 21:20:06 +00:00
Duncan Sands
de498ef6ec Revert commit 81144, and add a comment. It caused bugpoint timeouts
not to work any more on linux.

llvm-svn: 86481
2009-11-08 20:55:48 +00:00
Chris Lattner
11b6e3c1eb reapply r8644[3-5] with only the scary part
(SliceUpIllegalIntegerPHI) disabled.

llvm-svn: 86480
2009-11-08 19:23:30 +00:00
Daniel Dunbar
1543f2c26f Speculatively revert r8644[3-5], they seem to be leading to infinite loops in
llvm-gcc bootstrap.

llvm-svn: 86478
2009-11-08 17:52:47 +00:00
Anton Korobeynikov
552b831b91 Add and-not (bic) patterns. Based heavily on patch by Brian Lucas!
llvm-svn: 86471
2009-11-08 15:33:12 +00:00
Anton Korobeynikov
ff23fbb6c0 Move OR patterns upper to all logical stuff. No functionality change.
llvm-svn: 86470
2009-11-08 15:32:44 +00:00
Anton Korobeynikov
79aadcfa1a Some nice peephole patterns. Based on patch by Brian Lucas!
llvm-svn: 86469
2009-11-08 15:32:28 +00:00
Anton Korobeynikov
aaf4cc8e92 Print tab before operand of jcc
llvm-svn: 86468
2009-11-08 15:32:11 +00:00
Anton Korobeynikov
6f4ee0efe1 Fix invalid operand updates & implement post-inc memory operands
llvm-svn: 86466
2009-11-08 14:27:38 +00:00
Anton Korobeynikov
6dffe6ebbf Throw an error when stack realignment stuff fails instead of silent
code miscompilation

llvm-svn: 86463
2009-11-08 12:58:40 +00:00
Anton Korobeynikov
7b3a35eee8 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.

llvm-svn: 86462
2009-11-08 12:14:54 +00:00
Daniel Dunbar
c2a6a7dea5 Remove ByteswapSCANFResults, it is dead.
llvm-svn: 86458
2009-11-08 09:46:57 +00:00
Daniel Dunbar
ec7a3ae5f7 NNT: Remove DejaGNU test from NewNightlyTest reports, this aspect of testing is
handled by buildbots now.

llvm-svn: 86454
2009-11-08 09:34:14 +00:00
Daniel Dunbar
274f1953cd Two small fixes for site.exp for cmake.
llvm-svn: 86453
2009-11-08 09:29:52 +00:00
Daniel Dunbar
bbee468b71 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.

llvm-svn: 86452
2009-11-08 09:08:00 +00:00
Daniel Dunbar
ecd03574d6 Switch to using 'lit.site.cfg.in' for the site config template for Unit tests,
and generate it for CMake builds as well.

llvm-svn: 86451
2009-11-08 09:07:51 +00:00
Daniel Dunbar
abaa288896 Cleanup some unused RUN lines.
llvm-svn: 86450
2009-11-08 09:07:42 +00:00
Daniel Dunbar
d4dcd76f71 lit: Hardcode whence seek value, os.SEEK_END isn't always available.
llvm-svn: 86449
2009-11-08 09:07:33 +00:00