| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
'extern "C" static' is not accepted by g++-4.7. Rather to tweak, I just removed 'extern "C"', since it doesn't affect the ABI.
llvm-svn: 218290
|
|
|
|
|
|
| |
static destructor.
llvm-svn: 218283
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Comparing ModuleName to the file names listed will
always fail.
I wonder how this code ever worked and what its
purpose was. Why exclude the msvc runtime DLLs
but not exclude all Windows system DLLs?
Anyhow, it does not function as intended.
clang-formatted as well.
llvm-svn: 218276
|
|
|
|
| |
llvm-svn: 218142
|
|
|
|
|
|
|
|
| |
It isn't always useful to skip blank lines, as evidenced by the
somewhat awkward use of line_iterator in llvm-cov. This adds a knob to
control whether or not to skip blanks.
llvm-svn: 217960
|
|
|
|
|
|
| |
The wrong value was returned and the unittest did not cover the stub dylib case.
llvm-svn: 217933
|
|
|
|
|
|
|
|
|
| |
There's some other cleanup that could happen here, but this is at least
the mechanical transformation to unique_ptr.
Derived from a patch by Anton Yartsev.
llvm-svn: 217803
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
le64 is a generic little-endian 64-bit processor, mimicking le32.
Depends on D5318.
Test Plan: make check-all
Reviewers: dschuff
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D5319
llvm-svn: 217697
|
|
|
|
| |
llvm-svn: 217666
|
|
|
|
|
|
|
| |
Use llvm::COFF::BigObjMagic insetad of the string literal.
Also checks the version number.
llvm-svn: 217633
|
|
|
|
|
|
|
| |
identify_magic recognized a COFF bigobj as an import library file.
This patch fixes that.
llvm-svn: 217627
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The main difference is the removal of
std::error_code exists(const Twine &path, bool &result);
It was an horribly redundant interface since a file not existing is also a valid
error_code. Now we have an access function that returns just an error_code. This
is the only function that has to be implemented for Unix and Windows. The
functions can_write, exists and can_execute an now just wrappers.
One still has to be very careful using these function to avoid introducing
race conditions (Time of check to time of use).
llvm-svn: 217625
|
|
|
|
| |
llvm-svn: 217597
|
|
|
|
|
|
| |
Patch by Andrew Turner.
llvm-svn: 217454
|
|
|
|
|
|
| |
dereference it. This is a speculative fix for a failure found on the valgrind buildbot triggered by a clang test.
llvm-svn: 217295
|
|
|
|
|
|
|
|
| |
test case on UBSan bootstrap bot.
This fixes the last failure of "check-clang" in UBSan bootstrap bot.
llvm-svn: 217294
|
|
|
|
|
|
|
|
| |
LanguageString()"
This commit was reverted in r217183, but is OK to go in again now that its dependency is commited (as of r217186).
llvm-svn: 217231
|
|
|
|
| |
llvm-svn: 217230
|
|
|
|
|
|
|
|
| |
Reviewed in:
http://reviews.llvm.org/D5115
llvm-svn: 217229
|
|
|
|
|
|
|
|
|
|
| |
Reviewed By: dblaikie
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D5187
llvm-svn: 217186
|
|
|
|
|
|
|
|
| |
This reverts commit 93c7e6161e1adbd2c7ac81fa081823183035cb64.
This commit got approved first, but was dependant on another one going in (The one pretty printing attribute values). I'll reapply when the other one is in.
llvm-svn: 217183
|
|
|
|
|
|
|
|
|
|
| |
Reviewed By: dblaikie
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D5193
llvm-svn: 217182
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds to LLVMSupport the capability of writing files with
international characters encoded in the current system encoding. This
is relevant for Windows, where we can either use UTF16 or the current
code page (the legacy Windows international characters). On UNIX, the
file is always saved in UTF8.
This will be used in a patch for clang to thoroughly support response
files creation when calling other tools, addressing PR15171. On
Windows, to correctly support internationalization, we need the
ability to write response files both in UTF16 or the current code
page, depending on the tool we will call. GCC for mingw, for instance,
requires files to be encoded in the current code page. MSVC tools
requires files to be encoded in UTF16.
Patch by Rafael Auler!
llvm-svn: 217068
|
|
|
|
|
|
|
|
| |
This is part of our larger effort to remove static initializers from LLVM libraries.
Reviewed by: chandlerc
llvm-svn: 217053
|
|
|
|
| |
llvm-svn: 216996
|
|
|
|
| |
llvm-svn: 216925
|
|
|
|
| |
llvm-svn: 216921
|
|
|
|
|
|
|
| |
This reverts revision 216913; the new test added at revision 216913
caused regression failures on a couple of buildbots.
llvm-svn: 216914
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When folding a fused multiply-add builtin call, make sure that we propagate the
correct result in the case where the addend is zero, and the two other operands
are finite non-zero.
Example:
define double @test() {
%1 = call double @llvm.fma.f64(double 7.0, double 8.0, double 0.0)
ret double %1
}
Before this patch, the instruction simplifier wrongly folded the builtin call
in function @test to constant 'double 7.0'.
With this patch, method 'fusedMultiplyAdd' correctly evaluates the multiply and
propagates the expected result (i.e. 56.0).
Added test fold-builtin-fma.ll with the reproducible from PR20832 plus extra
test cases to verify the behavior of method 'fusedMultiplyAdd' in the presence
of NaN/Inf operands.
This fixes PR20832.
Differential Revision: http://reviews.llvm.org/D5152
llvm-svn: 216913
|
|
|
|
|
|
| |
const from some other StringRefs since its implicitly const already.
llvm-svn: 216820
|
|
|
|
|
|
| |
Reviewed by: Chandlerc
llvm-svn: 216704
|
|
|
|
|
|
| |
Code reviewed by Chandlerc
llvm-svn: 216703
|
|
|
|
| |
llvm-svn: 216583
|
|
|
|
|
|
| |
In fact, most users were already using the StringRef version.
llvm-svn: 216575
|
|
|
|
|
|
|
|
| |
opened."
This reverts commit r216563, which breaks lli's dynamic symbol resolution.
llvm-svn: 216569
|
|
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D5030
Reviewed By: Reid Kleckner, Rafael Espindola
llvm-svn: 216563
|
|
|
|
| |
llvm-svn: 216539
|
|
|
|
|
|
| |
just letting them be implicitly created.
llvm-svn: 216525
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The attached patch simplifies a few interfaces that don't need to take
ownership of a buffer.
For example, both parseAssembly and parseBitcodeFile will parse the
entire buffer before returning. There is no need to take ownership.
Using a MemoryBufferRef makes it obvious in the type signature that
there is no ownership transfer.
llvm-svn: 216488
|
|
|
|
|
|
|
|
|
| |
We had two functions for finding the temp or cache directory. Each had a
different set of smarts about OS specific APIs.
With this patch system_temp_directory becomes the only way to do it.
llvm-svn: 216460
|
|
|
|
|
|
| |
This reverts commit rr216359.
llvm-svn: 216429
|
|
|
|
|
|
| |
This reverts commit r216360.
llvm-svn: 216428
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch fixes a subtle bug in the UNIX implementation of
llvm::sys::argumentsFitWithinSystemLimits() regarding the misuse of a static
variable. This bug causes our cached number that stores the system command line
maximum length to be halved after each call to the function. With a sufficient
number of calls to this function, it will eventually report any given command
line string to be over system limits.
Patch by Rafael Auler.
llvm-svn: 216415
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch refactors the argument serialization logic used in the Execute
function, used to launch new Windows processes. There is a critical step that
joins char** arguments into a single string, building the command line used to
launch the new process, and the readability of this code is improved if this
part is refactored in its own helper function.
Patch by Rafael Auler!
llvm-svn: 216411
|
|
|
|
|
|
|
|
|
|
| |
Take a StringRef instead of a "const char *".
Take a "std::error_code &" instead of a "std::string &" for error.
A create static method would be even better, but this patch is already a bit too
big.
llvm-svn: 216393
|
|
|
|
| |
llvm-svn: 216360
|
|
|
|
| |
llvm-svn: 216359
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Based on the STL class of the same name, it guards a mutex
while also allowing it to be unlocked conditionally before
destruction.
This eliminates the last naked usages of mutexes in LLVM and
clang.
It also uncovered and fixed a bug in callExternalFunction()
when compiled without USE_LIBFFI, where the mutex would never
be unlocked if the end of the function was reached.
llvm-svn: 216338
|
|
|
|
|
|
| |
Use lock/unlock() convention instead of acquire/release().
llvm-svn: 216336
|
|
|
|
|
|
|
| |
Only one function remains a bit too complicated
for a simple mutex guard. No functionality change.
llvm-svn: 216335
|