Commit Graph

171527 Commits

Author SHA1 Message Date
Sean Silva 0b4df9b3f4 [docs] Update link title
docs/TableGen/ is not really just "fundamentals" anymore, but rather
more of a portal for all things TableGen.

llvm-svn: 205743
2014-04-07 22:42:53 +00:00
Sean Silva d02bf3e0e5 [docs] Fix some Sphinx warnings that have crept in.
llvm-svn: 205742
2014-04-07 22:29:53 +00:00
Reed Kotler 735da8e015 Reverting commit r205628 due to mips64 issues.
llvm-svn: 205741
2014-04-07 22:11:40 +00:00
Greg Clayton c7797accb8 Fixed a case where we could spin indefinitely if we got an error from fgets that isn't EINTR.
<rdar://problem/16535437>

llvm-svn: 205740
2014-04-07 21:37:59 +00:00
Greg Clayton 78d1019703 Cleanup the code a bit.
llvm-svn: 205739
2014-04-07 21:37:03 +00:00
Andrew Trick 8d007bb5d4 Put a limit on ScheduleDAGSDNodes::ClusterNeighboringLoads to avoid blowing up compile time.
Fixes PR16365 - Extremely slow compilation in -O1 and -O2.

The SD scheduler has a quadratic implementation of load clustering
which absolutely blows up compile time for large blocks with constant
pool loads. The MI scheduler has a better implementation of load
clustering. However, we have not done the work yet to completely
eliminate the SD scheduler. Some benchmarks still seem to benefit from
early load clustering, although maybe by chance.

As an intermediate term fix, I just put a nice limit on the number of
DAG users to search before finding a match. With this limit there are no
binary differences in the LLVM test suite, and the PR16365 test case
does not suffer any compile time impact from this routine.

llvm-svn: 205738
2014-04-07 21:29:22 +00:00
Rui Ueyama e6c499acd7 Early continue to reduce nesting.
llvm-svn: 205737
2014-04-07 21:13:33 +00:00
Rui Ueyama 5de951d8c1 No else after return.
llvm-svn: 205736
2014-04-07 21:01:11 +00:00
Rui Ueyama feab78785b [ELF] Unit tests for -o and --noinhibit-exec.
llvm-svn: 205735
2014-04-07 20:52:48 +00:00
Greg Clayton 521c2278ab Disable JITLoaderGDB on "vendor == apple" for now due to performance slowdowns for every first run process as a global name lookup in all shared libraries if performed.
<rdar://problem/16542894>

llvm-svn: 205734
2014-04-07 20:13:57 +00:00
DeLesley Hutchins 43fd21a045 Thread Safety Analysis: fix warning.
llvm-svn: 205733
2014-04-07 19:51:32 +00:00
Tom Stellard 204e61bbdf R600/SI: Handle INSERT_SUBREG in SIFixSGPRCopies
llvm-svn: 205732
2014-04-07 19:45:45 +00:00
Tom Stellard 50122a5890 R600: Match 24-bit arithmetic patterns in a Target DAGCombine
Moving these patterns from TableGen files to PerformDAGCombine()
should allow us to generate better code by eliminating unnecessary
shifts and extensions earlier.

This also fixes a bug where the MAD pattern was calling
SimplifyDemandedBits with a 24-bit mask on the first operand
even when the full pattern wasn't being matched.  This occasionally
resulted in some instructions being incorrectly deleted from the
program.

v2:
  - Fix bug with 64-bit mul

llvm-svn: 205731
2014-04-07 19:45:41 +00:00
Tom Stellard 3cbe014027 R600: Replace dyn_cast + assert with cast
llvm-svn: 205730
2014-04-07 19:31:13 +00:00
Reid Kleckner 0dc06b9a3d -fms-extensions: Don't define __PRETTY_FUNCTION__ to __FUNCTION__
This reverts r90596 from 2009. Having this macro definition makes Clang
strictly less useful with -fms-extensions.

llvm-svn: 205729
2014-04-07 19:27:58 +00:00
DeLesley Hutchins b2213910de Thread Safety Analysis: update to internal SExpr handling.
This patch is the first part of a significant refactoring that seeks to restore
sanity to way thread safety analysis deals with capability expressions.  The
current patch merely provides an outline of the structure of the new system.
It's not yet connected to the actual analysis, so there's no change in
functionality.

llvm-svn: 205728
2014-04-07 18:09:54 +00:00
Reid Kleckner bf94e6e14d Mangle the vbptr offset into pointers to member functions
This can actually be non-zero if you override a function from a virtual
base and you have forced the most_general pointer to member
representation.

llvm-svn: 205727
2014-04-07 18:07:03 +00:00
Richard Smith 851dbd5602 Remove an unused file.
Using this file would result in an odr violation: it defines an llvm::Interval
class that conflicts with the one in Analysis/Interval.h.

llvm-svn: 205726
2014-04-07 17:17:00 +00:00
Richard Smith 592fe8803c When a CHECK-NEXT fails because there was no match on the next line, include
the non-matching next line in the diagnostic to make the problem more obvious.

llvm-svn: 205725
2014-04-07 17:09:53 +00:00
Matt Arsenault 4be76e99fe Use std::swap
llvm-svn: 205723
2014-04-07 16:44:26 +00:00
Matt Arsenault 7939acd7fa Use .data() instead of &x[0]
llvm-svn: 205722
2014-04-07 16:44:24 +00:00
Jordan Rose 7f07fc1fee [analyzer] Fix mistake in example for potential checker "posix.Errno".
Found by Richard Osbourne!

llvm-svn: 205721
2014-04-07 16:36:15 +00:00
Jordan Rose 9c8a5ff161 [analyzer] Re-enable test I accidentally committed commented-out.
Thanks, Alex!

llvm-svn: 205720
2014-04-07 16:36:08 +00:00
Ed Maste 8b2c281a75 Correct typo: waychpoint -> watchpoint
llvm-svn: 205719
2014-04-07 16:33:53 +00:00
Fariborz Jahanian 148c8c8ec2 Revert r205646 (keeping the test in its modified form) as
it is subsumed by r205521.

llvm-svn: 205718
2014-04-07 16:32:54 +00:00
David Majnemer 6c684a727a Fix a typo introduced in r205716
llvm-svn: 205717
2014-04-07 16:19:27 +00:00
David Majnemer dc7a47ce2c clang-cl: make /Gw map to -fdata-sections
Note that /Gy no longer implies -fdata-sections.

llvm-svn: 205716
2014-04-07 16:14:38 +00:00
Richard Smith 151b8a3867 Fix clang-tidy warning (argument comments don't match parameter names).
llvm-svn: 205715
2014-04-07 15:16:58 +00:00
Dmitri Gribenko e570ede5d1 libclang: add clang_CXXMethod_isConst API that allows to determine if a C++
member function or member function template is declared 'const'

Patch by Kevin Funk with testcase updates by me.

llvm-svn: 205714
2014-04-07 14:59:13 +00:00
Eric Christopher 484182779d Invert the option to enable debug info verification. No functional
change outside of the command line to enable it.

llvm-svn: 205713
2014-04-07 13:55:21 +00:00
Ed Maste e63b5125e0 Add decorator for FreeBSD DynamicValueTestCase failure
Not yet root-caused, but I presume it is the same issue that affects
Linux.

llvm-svn: 205712
2014-04-07 13:42:05 +00:00
Eric Christopher 5c8c5e5573 Revert the last couple of patches here and go back to something
that at least failed reliably.

llvm-svn: 205711
2014-04-07 13:36:26 +00:00
Eric Christopher beb2cd6b7c Handle vlas during inline cost computation if they'll be turned
into a constant size alloca by inlining.

Ran a run over the testsuite, no results out of the noise, fixes
the testcase in the PR.

PR19115.

llvm-svn: 205710
2014-04-07 13:36:21 +00:00
Marshall Clow 886c6a645f Fix PR19819
llvm-svn: 205709
2014-04-07 13:32:26 +00:00
Eric Christopher edc8cbf9a5 XFAIL this completely at the moment:
cygwin has llvm-dwarfdump problems and isn't paying attention to the
specific xfail there.

s390x isn't matching for an unknown reason.

llvm-svn: 205708
2014-04-07 13:10:27 +00:00
Simon Atanasyan d1bd945109 Fix a typo in the comment.
llvm-svn: 205707
2014-04-07 12:59:36 +00:00
Eric Christopher fcd222aa47 Add NDEBUG markers around debug only function.
llvm-svn: 205706
2014-04-07 12:46:30 +00:00
Eric Christopher 6ab6a0648b Add debug location information to the vectorizer debug statements.
Patch by Zinovy Nis.

llvm-svn: 205705
2014-04-07 12:32:17 +00:00
Eric Christopher 57910ac671 Make test run on most platforms and only fail on cygwin/mingw while
it's being investigated for those.

llvm-svn: 205704
2014-04-07 12:32:12 +00:00
Manuel Klimek 8fae8ddab8 Update arc config to new domain.
llvm-svn: 205703
2014-04-07 10:23:19 +00:00
Manuel Klimek 0ee8505800 Update arc config to new domain.
llvm-svn: 205702
2014-04-07 10:22:41 +00:00
Manuel Klimek 234b86b24c Make docs point to new domain.
llvm-svn: 205701
2014-04-07 10:21:33 +00:00
Marshall Clow 5cf03ab4b7 Removed 'sized deallocation' from C++14 status page since it turned out to require no library work, and fixed a typo in index.html. Thanks to Tobias for pointing these out.
llvm-svn: 205700
2014-04-07 07:28:33 +00:00
Craig Topper 5d05ce23ca Use 'false' for a bool instead of '0'
llvm-svn: 205699
2014-04-07 06:59:39 +00:00
Rui Ueyama 3017efb710 Update Phabricator server.
llvm-svn: 205698
2014-04-07 04:52:24 +00:00
Craig Topper c10719f55d [C++11] Make use of 'nullptr' in the Support library.
llvm-svn: 205697
2014-04-07 04:17:22 +00:00
Serge Pavlov 093edf8c7f Updated phabricator server.
llvm-svn: 205696
2014-04-07 03:57:04 +00:00
Serge Pavlov 28310eb751 Updated phabricator server.
llvm-svn: 205695
2014-04-07 03:39:55 +00:00
Rui Ueyama 595026e071 [ELF] Accept "-rpath=<foo>" as well as "-rpath <foo>".
llvm-svn: 205694
2014-04-06 21:23:24 +00:00
Rui Ueyama c141c8c59a [ELF] Fix driver bug.
GNU LD-comptaible driver wrongly requires a space after '=' for a few
options such as "-init=<symbol>" or "-entry=<symbol>". This patch is
to fix that bug and add a few tests for it.

llvm-svn: 205693
2014-04-06 21:15:05 +00:00