| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 214786
|
| |
|
|
| |
llvm-svn: 214777
|
| |
|
|
|
|
|
|
|
|
| |
This matches MSVC's logic, which seems to be that when the friend
declaration is qualified, it cannot be a declaration of a new symbol
and so the dll linkage doesn't change.
Differential Revision: http://reviews.llvm.org/D4764
llvm-svn: 214774
|
| |
|
|
| |
llvm-svn: 214773
|
| |
|
|
|
|
| |
this instead of silently accepting and producing possibly-unexpected behavior.
llvm-svn: 214770
|
| |
|
|
| |
llvm-svn: 214759
|
| |
|
|
| |
llvm-svn: 214758
|
| |
|
|
| |
llvm-svn: 214757
|
| |
|
|
|
|
|
|
|
|
| |
This patch adds the '-fcoverage-mapping' option which
allows clang to generate the coverage mapping information
that can be used to provide code coverage analysis using
the execution counts obtained from the instrumentation
based profiling (-fprofile-instr-generate).
llvm-svn: 214752
|
| |
|
|
| |
llvm-svn: 214739
|
| |
|
|
| |
llvm-svn: 214735
|
| |
|
|
|
|
|
|
|
|
| |
This is a regression from clang 3.4
Set the result to ExprError and returns true, rather than simply
returns false because errors have been reported already and returning
false show a confusing error
llvm-svn: 214734
|
| |
|
|
|
|
|
|
| |
attribute is known to GCC. Clang accepts attributes in this position, but
GCC does not, so this is a GCC-compat warning. If the attribute is not known to GCC, then the diagnostic is suppressed.
llvm-svn: 214730
|
| |
|
|
|
|
|
| |
capability expressions of the form !expr, and denote a capability that must
not be held.
llvm-svn: 214725
|
| |
|
|
|
|
| |
to an invalid function parameter type.
llvm-svn: 214723
|
| |
|
|
|
|
| |
refers to an invalid function parameter type.
llvm-svn: 214722
|
| |
|
|
|
|
|
|
|
|
| |
Before:
Constructor(A... a) : a_(X<A> { std::forward<A>(a) }...) {}
After:
Constructor(A... a) : a_(X<A>{std::forward<A>(a)}...) {}
llvm-svn: 214720
|
| |
|
|
|
|
|
|
|
| |
That reduces a number of `if` operators and prevent a combinatorics explosion
if/when more dynamic linker path variants added.
No functional changes.
llvm-svn: 214712
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Adding __int128 support explicitly for x86_64 because currently it's on
only when pointer size >= 64 which is not the case for x32.
Test Plan: One of the tests using __int128 is updated
Reviewers: atanasyan, chandlerc
Subscribers: cfe-commits, rob.khasanov, zinovy.nis, dschuff
Differential Revision: http://reviews.llvm.org/D4755
llvm-svn: 214710
|
| |
|
|
|
|
|
|
| |
Clang::SemaTemplate/instantiate-expr-1.cpp when AArch64 is the default target.
Commit r213935 added additional validation of register constants/size for AArch64 and because these tests which contain Intel assembler the new validation caused these tests to fail when the default target is changed to an AArch64 target.
llvm-svn: 214706
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
CXXNameMangler::mangleUnqualifiedBlock believed that
MangleContext::getBlockId returned something that used Itanium-style
discriminator numbers.
Discriminator numbers start their numberign from 1 and the first
mangling that actually gets any sort of number mangled in is the second
discriminator.
However, Block IDs start from zero. The logic for omitting the mangling
number did a ' > 1' instead of a ' > 0' comparison; this could
potentially cause mangling conflicts.
llvm-svn: 214699
|
| |
|
|
|
|
|
| |
A typedef of a typedef should have AlignIsRequired if *either* typedef
has an AlignAttr attached to it.
llvm-svn: 214698
|
| |
|
|
|
|
|
| |
poorly-worded warning for a case value that is not a possible value of the
switched-on expression.
llvm-svn: 214678
|
| |
|
|
|
|
| |
destroyed on shutdown regardless. Fixes a double-delete.
llvm-svn: 214675
|
| |
|
|
|
|
|
| |
It's a bit more obvious what's going on if we use path::filename
rather than decrementing an iterator here.
llvm-svn: 214668
|
| |
|
|
|
|
| |
type handling.
llvm-svn: 214662
|
| |
|
|
|
|
| |
mingw32 builder.
llvm-svn: 214656
|
| |
|
|
| |
llvm-svn: 214635
|
| |
|
|
| |
llvm-svn: 214620
|
| |
|
|
| |
llvm-svn: 214619
|
| |
|
|
|
|
| |
Makefile(s) are not transitive on clang libs.
llvm-svn: 214617
|
| |
|
|
| |
llvm-svn: 214616
|
| |
|
|
|
|
| |
involved.
llvm-svn: 214606
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of creating global variables for source locations and global names,
just create metadata nodes and strings. They will be transformed into actual
globals in the instrumentation pass (if necessary). This approach is more
flexible:
1) we don't have to ensure that our custom globals survive all the optimizations
2) if globals are discarded for some reason, we will simply ignore metadata for them
and won't have to erase corresponding globals
3) metadata for source locations can be reused for other purposes: e.g. we may
attach source location metadata to alloca instructions and provide better descriptions
for stack variables in ASan error reports.
No functionality change.
llvm-svn: 214604
|
| |
|
|
|
|
|
|
|
| |
Unsurprisingly, changing a file modification time to a specific
date/time doesn't give the same epoch time everywhere. Just make the
file move into the past and look at only the first few digits of the
epoch time.
llvm-svn: 214589
|
| |
|
|
|
|
|
|
|
|
|
|
| |
We've added support for a multiple functions with the same name in
LLVM's profile data, so the lookup returning the function hash it
found doesn't make sense anymore. Update to pass in the hash we
expect.
This also adds a test that the version 1 format is still readable,
since the new API is expected to handle that.
llvm-svn: 214586
|
| |
|
|
|
|
| |
emitting everything, rather than potentially doing this reentrantly.
llvm-svn: 214582
|
| |
|
|
| |
llvm-svn: 214579
|
| |
|
|
|
|
|
|
| |
Build systems tend to traffic in files and modification times, so having
them touch a file at the beginning of the build can be easier than
having them update the compile command they use every time they build.
llvm-svn: 214577
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
It is responsible for generating metadata consumed by sanitizer instrumentation
passes in the backend. Move several methods from CodeGenModule to SanitizerMetadata.
For now the class is stateless, but soon it won't be the case.
Instead of creating globals providing source-level information to ASan, we will create
metadata nodes/strings which will be turned into actual global variables in the
backend (if needed).
No functionality change.
llvm-svn: 214564
|
| |
|
|
| |
llvm-svn: 214562
|
| |
|
|
|
|
|
|
|
| |
Original message:
Fix iterator invalidation issues that are breaking my modules buildbot's
bootstrap.
llvm-svn: 214555
|
| |
|
|
|
|
|
|
|
| |
These tests seem like an exception to the rule against assembly emitting
tests in clang. I made an LLVM side change that can only be tested by
setting up the inline assembly machinery that is only implemented by
Clang.
llvm-svn: 214552
|
| |
|
|
|
|
| |
This used to assert.
llvm-svn: 214551
|
| |
|
|
| |
llvm-svn: 214549
|
| |
|
|
|
|
| |
bootstrap.
llvm-svn: 214547
|
| |
|
|
| |
llvm-svn: 214529
|
| |
|
|
| |
llvm-svn: 214526
|
| |
|
|
| |
llvm-svn: 214520
|
| |
|
|
|
|
|
|
| |
generated pretty printing logic was unaware of this. Fixed the pretty printing logic, and added a test to ensure it no longer asserts.
Added a FIXME to the code about eliding the parenthesis when pretty printing such a construct.
llvm-svn: 214513
|