| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
| |
The cpp backend is not a reasonable fallback for a missing target. It is a
very special backend, so it is reasonable to use it only if explicitly
requested.
While at it, simplify the interface a bit.
llvm-svn: 197241
|
|
|
|
| |
llvm-svn: 197168
|
|
|
|
| |
llvm-svn: 197166
|
|
|
|
| |
llvm-svn: 197158
|
|
|
|
|
|
|
|
|
| |
The old AddFixedStringToRegEx() it was based on got away with this for the
longest time, but the problem became easy to spot after the cleanup in r197096.
Also add a quick unit test to cover regex escaping.
llvm-svn: 197121
|
|
|
|
|
|
|
| |
Both FileCheck and clang's -verify need to escape strings for regexes,
so let's expose this as a utility in the Regex class.
llvm-svn: 197096
|
|
|
|
|
|
| |
Based on a patch by Neil Henning!
llvm-svn: 197045
|
|
|
|
|
|
|
|
|
|
|
|
| |
Defaulting to iOS 3.0 when LLVM has to guess the version is no longer a useful
option and can give surprising results (like tail calls being disabled).
5.0 seems like a reasonable compromise as a platform that's still interesting
to some people.
rdar://problem/15567348
llvm-svn: 196912
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
When clang is used under GNU/Linux in a chroot without /proc mount, it falls
back on the BSD method. However, since the buf variable is used twice
and fails with snprintf to produce the correct path.
When called as relatived (ie ./clang), it was failing with:
"" -cc1 [...] -x c++ x.cc
error: unable to execute command: Executable "" doesn't exist!
I also took the opportunity to simply the code (the first arg of test_dir
was useless).
Reviewers: rafael
Reviewed By: rafael
CC: cfe-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D2361
llvm-svn: 196791
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Command line arguments that begin with @ but aren't a path to an
existing file currently cause later @file arguments to be ignored.
Correctly skip over these arguments instead of trying to read a
non-existent file 20 times and giving up.
Since the problem manifests in the clang driver, the test is in that
repository.
Fixes rdar://problem/15590906
llvm-svn: 196620
|
|
|
|
|
|
|
| |
This patch tries to avoid unrelated changes other than fixing a few
hyphen-related ambiguities and contractions in nearby lines.
llvm-svn: 196471
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes a logic bug pointed out by Juraj Ivancic.
No behavior change because none of the in-tree clients of
cl::ExpandResponseFiles check the return value. In this case, the
@prefixed arguments are left in the command line. Downstream command
line processing has the opportunity to emit errors about it, so this
isn't that bad.
llvm-svn: 196306
|
|
|
|
|
|
|
|
|
|
|
|
| |
protection to the same layer.
This is in line with Howard's advice on how best to handle self-move
assignment as he explained on SO[1]. It also ensures that implementing
swap with move assignment continues to work in the case of self-swap.
[1]: http://stackoverflow.com/questions/9322174/move-assignment-operator-and-if-this-rhs
llvm-svn: 195705
|
|
|
|
|
|
|
| |
implementation. Silliness, but it'll be a trivial performance
optimization. This should clear up a failure on the vg_leak bot.
llvm-svn: 195704
|
|
|
|
| |
llvm-svn: 195650
|
|
|
|
|
|
| |
Patch by Adam Strzelecki
llvm-svn: 195632
|
|
|
|
| |
llvm-svn: 195285
|
|
|
|
|
|
|
|
|
|
|
| |
Enhance the tests to actually require moves in C++11 mode, in addition
to testing the moved-from state. Further enhance the tests to cover
copy-assignment into a moved-from object and moving a large-state
object. (Note that we can't really test small-state vs. large-state as
that isn't an observable property of the API really.) This should finish
addressing review on r195239.
llvm-svn: 195261
|
|
|
|
|
|
|
|
|
|
|
|
| |
Somehow, this ADT got missed which is moderately terrifying considering
the efficiency of move for it.
The code to implement move semantics for it is pretty horrible
currently but was written to reasonably closely match the rest of the
code. Unittests that cover both copying and moving (at a basic level)
added.
llvm-svn: 195239
|
|
|
|
|
|
| |
attempt at this, this time doing a clean build on Linux, and running the LLVM, clang, and extra tests, to try to make sure there's no problems.
llvm-svn: 195134
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch removes most of the trivial cases of weak vtables by pinning them to
a single object file. The memory leaks in this version have been fixed. Thanks
Alexey for pointing them out.
Differential Revision: http://llvm-reviews.chandlerc.com/D2068
Reviewed by Andy
llvm-svn: 195064
|
|
|
|
|
|
| |
no guarantee that the buffer will be non-null.
llvm-svn: 195019
|
|
|
|
| |
llvm-svn: 195018
|
|
|
|
|
|
|
|
|
| |
Fixes http://llvm.org/PR16221, http://llvm.org/PR15927
Phabricator: http://llvm-reviews.chandlerc.com/D1236
Patch by Andrew Tulloch!
llvm-svn: 195016
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change is incorrect. If you delete virtual destructor of both a base class
and a subclass, then the following code:
Base *foo = new Child();
delete foo;
will not cause the destructor for members of Child class. As a result, I observe
plently of memory leaks. Notable examples I investigated are:
ObjectBuffer and ObjectBufferStream, AttributeImpl and StringSAttributeImpl.
llvm-svn: 194997
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
division and make the private scale in BlockFrequency more performant.
This change is the first in a series of changes improving LLVM's Block
Frequency propogation implementation to not lose probability mass in
branchy code when propogating block frequency information from a basic
block to its successors. This patch is a simple infrastructure
improvement that does not actually modify the block frequency
algorithm. The specific changes are:
1. Changes the division algorithm used when scaling block frequencies by
branch probabilities to a short division algorithm. This gives us the
remainder for free as well as provides a nice speed boost. When I
benched the old routine and the new routine on a Sandy Bridge iMac with
disabled turbo mode performing 8192 iterations on an array of length
32768, I saw ~600% increase in speed in mean/median performance.
2. Exposes a scale method that returns a remainder. This is important so
we can ensure that when we scale a block frequency by some branch
probability BP = N/D, the remainder from the division by D can be
retrieved and propagated to other children to ensure no probability mass
is lost (more to come on this).
llvm-svn: 194950
|
|
|
|
| |
llvm-svn: 194906
|
|
|
|
|
|
|
|
|
|
|
| |
This patch removes most of the trivial cases of weak vtables by pinning them to
a single object file.
Differential Revision: http://llvm-reviews.chandlerc.com/D2068
Reviewed by Andy
llvm-svn: 194865
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Make identify_magic to recognize COFF import file.
Reviewers: Bigcheese
CC: llvm-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D2165
llvm-svn: 194852
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Some machine-type-neutral object files containing only undefined symbols
actually do exist in the Windows standard library. Need to recognize them
as COFF files.
Reviewers: Bigcheese
CC: llvm-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D2164
llvm-svn: 194734
|
|
|
|
| |
llvm-svn: 194681
|
|
|
|
| |
llvm-svn: 194680
|
|
|
|
| |
llvm-svn: 194655
|
|
|
|
| |
llvm-svn: 194644
|
|
|
|
|
|
|
| |
Otherwise it's impossible to use it. Also don't include C++ headers in
a C header.
llvm-svn: 194581
|
|
|
|
| |
llvm-svn: 194144
|
|
|
|
|
|
|
| |
Presence of using namespace llvm depended on several #ifdef's, and
this broke the build on mswin32.
llvm-svn: 194142
|
|
|
|
|
|
| |
Original patch by Chris Wailes
llvm-svn: 194139
|
|
|
|
|
|
| |
This is just bdver2 + FSGSBase.
llvm-svn: 193984
|
|
|
|
|
|
|
|
|
| |
Enable pretty
stack traces by default if you use PrettyStackTraceProgram, so that existing LLVM-based
tools will continue to get it without any changes.
llvm-svn: 193971
|
|
|
|
|
|
|
|
| |
intercept crashes. LLVM already has
the ability to disable this functionality. This patch exposes it via the C API.
llvm-svn: 193937
|
|
|
|
| |
llvm-svn: 193795
|
|
|
|
|
|
| |
Patch by Robin Hahling.
llvm-svn: 193750
|
|
|
|
|
|
|
|
|
|
| |
As on other hosts, the CPU identification instruction is priveleged,
so we need to look through /proc/cpuinfo. I copied the PowerPC way of
handling "generic".
Several tests were implicitly assuming z10 and so failed on z196.
llvm-svn: 193742
|
|
|
|
|
|
|
|
|
| |
startswith_lower is ocassionally useful and I think worth adding.
endwith_lower is added for completeness.
Differential Revision: http://llvm-reviews.chandlerc.com/D2041
llvm-svn: 193706
|
|
|
|
|
|
| |
the case [x, INT_MIN) was not handled optimally
llvm-svn: 193694
|
|
|
|
| |
llvm-svn: 193523
|
|
|
|
| |
llvm-svn: 193429
|
|
|
|
| |
llvm-svn: 193350
|
|
|
|
| |
llvm-svn: 193344
|