| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
release_generic_capability functions are now functionally distinct for capability analysis. The unlock_function attribute maps directly to release_generic_capability.
llvm-svn: 204469
|
|
|
|
|
|
|
|
| |
test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance-vtordisps.cpp by forcing VFTableBuilder invocation with virtual function calls
Previously the vftables were built at the end of the TU in a reverse-to-random order
llvm-svn: 204465
|
|
|
|
|
|
|
|
| |
test/CodeGenCXX/microsoft-abi-vtables-multiple-nonvirtual-inheritance.cpp by forcing VFTableBuilder invocation with virtual function calls
Previously the vftables were built at the end of the TU in a reverse-to-random order
llvm-svn: 204464
|
|
|
|
|
|
|
|
| |
forcing VFTableBuilder invocation with virtual function calls
Previously the vftables were built at the end of the TU in a reverse-to-random order
llvm-svn: 204455
|
|
|
|
| |
llvm-svn: 204453
|
|
|
|
| |
llvm-svn: 204436
|
|
|
|
|
|
| |
expressions of loops.
llvm-svn: 204430
|
|
|
|
| |
llvm-svn: 204428
|
|
|
|
| |
llvm-svn: 204423
|
|
|
|
|
|
|
| |
at which that PCH imported each visible submodule of the module. Such locations
are needed when synthesizing macro directives resulting from the import.
llvm-svn: 204417
|
|
|
|
| |
llvm-svn: 204413
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Variables with available_externally linkage can be dropped at will.
This causes link errors, since there are still references to the
instrumentation! linkonce_odr is almost equivalent, so use that
instead.
As a drive-by fix (I don't have an Elf system, so I'm not sure how to
write a testcase), use linkonce linkage for the instrumentation of
extern_weak functions.
<rdar://problem/15943240>
llvm-svn: 204408
|
|
|
|
|
|
| |
resolved, emit an update record.
llvm-svn: 204403
|
|
|
|
| |
llvm-svn: 204395
|
|
|
|
|
|
|
|
| |
class with complex inheritance
Reviewed at http://llvm-reviews.chandlerc.com/D3128
llvm-svn: 204394
|
|
|
|
|
|
|
|
|
|
|
| |
These functions are in the profile runtime. PGO comes later.
Unfortunately, there's only room for 16 characters in a Darwin section,
so use __llvm_prf_ instead of __llvm_profile_ for section names.
<rdar://problem/15943240>
llvm-svn: 204390
|
|
|
|
| |
llvm-svn: 204376
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We were 'allowing' the following import
@import Sub;
where Sub is a subframework of Foo and we had a -F path inside
Foo.framework/Frameworks and no module map file for Sub. This would
later hit assertion failures in debug builds.
Now we should correctly diagnose this as a module not found error.
llvm-svn: 204368
|
|
|
|
|
|
|
|
| |
unlock_function attributes with the acquire_capability and release_capability attributes. The old spellings will continue to work, but the underlying semantic attributes have been replaced.
Downgraded the capability diagnostics from error to warning to match the desired behavior, and updated the existing test cases.
llvm-svn: 204350
|
|
|
|
|
|
|
|
|
|
|
|
| |
Amends r204300 to not try to test fixing a wchar_t* to "%ls", which we don't
do correctly anyway. In C mode, wchar_t is just a typedef for a normal
primitive integer type, not a distinct type like it is in C++. To make this
work correctly, we'll need to look for the wchar_t typedef, not just the
builtin type.
Should fix the buildbots.
llvm-svn: 204349
|
|
|
|
|
|
|
|
|
| |
This change turns -fsanitize-memory-track-origins into
-fsanitize-memory-track-origins=[level] flag (keeping the old one for
compatibility). Possible levels are 0 (off), 1 (default) and 2 (incredibly
detailed). See docs (part of this patch) for more info.
llvm-svn: 204346
|
|
|
|
|
|
| |
win32.
llvm-svn: 204334
|
|
|
|
|
|
|
|
|
| |
flags.
These flags are deprecated since at least Clang 3.3. Users should instead
use -fsanitize= with appropriate values.
llvm-svn: 204330
|
|
|
|
|
|
| |
configuration values.
llvm-svn: 204315
|
|
|
|
| |
llvm-svn: 204308
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
nontrivial returns.
The exception is return statements that include control-flow,
which are clearly doing something "interesting".
99% of the cases I examined for -Wunreachable-code that fired
on return statements were not interesting enough to warrant
being in -Wunreachable-code by default. Thus the move to
include them in -Wunreachable-code-return.
This simplifies a bunch of logic, including removing the ad hoc
logic to look for std::string literals.
llvm-svn: 204307
|
|
|
|
|
|
| |
Patch by Zach Davis!
llvm-svn: 204300
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This name, while more verbose, plays more nicely with tools that use
file extensions to determine file types. The existing spelling
'module.map' will continue to work, but the new spelling will take
precedence.
In frameworks, this new filename will only go in a new 'Modules'
sub-directory.
Similarly, add a module.private.modulemap corresponding to
module_private.map.
llvm-svn: 204261
|
|
|
|
|
|
|
|
| |
with variadic parameters
Patch by Joe Ranieri.
llvm-svn: 204236
|
|
|
|
|
|
|
|
| |
parameters
Patch by Joe Ranieri.
llvm-svn: 204235
|
|
|
|
|
|
|
|
| |
The spelling location of stringified strings is not a file location.
Optimally, we'll want to solve the problem (as the FIXME states) by
handing in the right FileEntry of the #include location.
llvm-svn: 204220
|
|
|
|
| |
llvm-svn: 204217
|
|
|
|
| |
llvm-svn: 204196
|
|
|
|
|
|
|
|
|
| |
The hash itself is still the number of counters, which isn't all that
useful, but this separates the API changes from the actual
implementation of the hash and will make it easier to transition to
the ProfileData library once it's implemented.
llvm-svn: 204186
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since "half" is an OpenCL keyword and clang accepts __fp16 as an extension for
other languages, error messages and metadata (and hence debug info) should refer
to the half-precision floating point as "__fp16" instead of "half" when
compiling for non-OpenCL languages. This patch creates a new printing policy for
half in a similar manner to what is done for bool and wchar_t.
Differential Revision: http://llvm-reviews.chandlerc.com/D2952
llvm-svn: 204164
|
|
|
|
| |
llvm-svn: 204153
|
|
|
|
|
|
|
|
| |
Test doesn't actually require production of an object file and for
some targets (e.g. hexagon) an assembler is not always available when
lit tests are run.
llvm-svn: 204144
|
|
|
|
| |
llvm-svn: 204138
|
|
|
|
| |
llvm-svn: 204129
|
|
|
|
| |
llvm-svn: 204116
|
|
|
|
|
|
| |
store DIRefs to their types for improved type uniquing.
llvm-svn: 204105
|
|
|
|
|
|
|
| |
template specialization (from different modules), dump them all, so that every
declaration is dumped somewhere.
llvm-svn: 204100
|
|
|
|
| |
llvm-svn: 204096
|
|
|
|
|
|
|
|
| |
in class extension is being implemented in primary class implementation
(no overriding is involved).
// rdar://16249335
llvm-svn: 204093
|
|
|
|
|
|
| |
declared in different namespaces in the same inline namespace set.
llvm-svn: 204082
|
|
|
|
|
|
|
|
| |
warnings (warning or lack there of) as well since
blocks are another pattern for envoking other
designated initializers. // rdar://16323233
llvm-svn: 204081
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In instrumentation-based profiling, we need a set of data structures to
represent the counters. Previously, these were built up during static
initialization. Now, they're shoved into a specially-named section so
that they show up as an array.
As a consequence of the reorganizing symbols, instrumentation data
structures for linkonce functions are now correctly coalesced.
This is the first step in a larger project to minimize runtime overhead
and dependencies in instrumentation-based profilng. The larger picture
includes removing all initialization overhead and making the dependency
on libc optional.
<rdar://problem/15943240>
llvm-svn: 204080
|
|
|
|
|
|
|
|
| |
class method with the same selctor but different argument
types having one of them in class extension.
// rdar://16312105
llvm-svn: 204065
|
|
|
|
| |
llvm-svn: 204051
|
|
|
|
|
|
| |
[PR8833]
llvm-svn: 204038
|