| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 173061
|
| |
|
|
| |
llvm-svn: 173060
|
| |
|
|
| |
llvm-svn: 173058
|
| |
|
|
|
|
|
|
|
|
| |
forming the identifier, e.g., as part of a selector or a declaration
name, don't actually deserialize any information about the
identifier. Instead, simply mark it "out-of-date" and we'll load the
the information on demand. 2% speedup on the modules testcase I'm
looking at; should also help PCH.
llvm-svn: 173056
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We now only put empty blocks into a single line, if all of:
- all tokens of the structural element fit into a single line
- we're not in a control flow statement
Note that we usually don't put record definitions into a single line, as
there's usually at least one more token (the semicolon) after the
closing brace. This doesn't hold when we are in a context where there is
no semicolon, like "enum E {}".
There were some missing tests around joining lines around the corner
cases of the allowed number of columns, so this patch adds some.
llvm-svn: 173055
|
| |
|
|
|
|
|
| |
kind indicates that it can never be redeclared. Good for a 1% speedup,
and redeclaration searching drops off the profile.
llvm-svn: 173054
|
| |
|
|
|
|
|
|
|
| |
Patch by: Michel Dänzer
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
llvm-svn: 173053
|
| |
|
|
|
|
|
|
|
| |
Patch by: Michel Dänzer
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
llvm-svn: 173052
|
| |
|
|
|
|
|
|
|
| |
Patch by: Michel Dänzer
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
llvm-svn: 173051
|
| |
|
|
|
|
|
|
|
| |
DeclContext. When the DeclContext is of a kind that can only be
defined once and never updated, we limit the search to the module file
that conatins the lookup table. Provides a 15% speedup in one
modules-heavy source file.
llvm-svn: 173050
|
| |
|
|
| |
llvm-svn: 173049
|
| |
|
|
| |
llvm-svn: 173048
|
| |
|
|
|
|
|
|
|
|
| |
Before: template <template <typename T>, typename P > class X;
After: template <template <typename T>, typename P> class X;
More importantly, the token annotations for the second ">" are now computed
correctly.
llvm-svn: 173047
|
| |
|
|
| |
llvm-svn: 173046
|
| |
|
|
|
|
|
|
|
|
|
| |
We now indent:
extern "C" {
int a;
}
without additional indent inside the extern "C" block.
llvm-svn: 173045
|
| |
|
|
|
|
| |
for PowerPC native arch. With this patch, building LLVM on PowerPC native arch produces a working ASan runtime.
llvm-svn: 173044
|
| |
|
|
|
|
|
| |
When trying to merge lines, we should not touch lines that are invalid,
as we don't know how long they might be.
llvm-svn: 173043
|
| |
|
|
| |
llvm-svn: 173042
|
| |
|
|
| |
llvm-svn: 173041
|
| |
|
|
| |
llvm-svn: 173040
|
| |
|
|
|
|
|
| |
Now correctly formats:
template <> class A<int> {} a;
llvm-svn: 173038
|
| |
|
|
| |
llvm-svn: 173037
|
| |
|
|
|
|
|
|
|
|
|
|
| |
is free. The whole CodeMetrics API should probably be reworked more, but
this is enough to allow deleting the duplicate code there for computing
whether an instruction is free.
All of the passes using this have been updated to pull in TTI and hand
it to the CodeMetrics stuff. Further, a dead CodeMetrics API
(analyzeFunction) is nuked for lack of users.
llvm-svn: 173036
|
| |
|
|
| |
llvm-svn: 173035
|
| |
|
|
|
|
| |
This change brought to by clang-format. =]
llvm-svn: 173034
|
| |
|
|
|
|
|
|
|
|
| |
analysis. How cute that it wasn't previously. ;]
Part of this confusion stems from the flattened header file tree. Thanks
to Benjamin for pointing out the goof on IRC, and we're considering
un-flattening the headers, so speak now if that would bug you.
llvm-svn: 173033
|
| |
|
|
|
|
|
|
| |
old CodeMetrics system. TTI has the specific advantage of being
extensible and customizable by targets to reflect target-specific cost
metrics.
llvm-svn: 173032
|
| |
|
|
|
|
|
|
|
|
|
| |
depend on and use other analyses (as long as they're either immutable
passes or CGSCC passes of course -- nothing in the pass manager has been
fixed here). Leverage this to thread TargetTransformInfo down through
the inline cost analysis.
No functionality changed here, this just threads things through.
llvm-svn: 173031
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
a dynamic analysis done on each call to the routine. However, now it can
use the standard pass infrastructure to reference other analyses,
instead of a silly setter method. This will become more interesting as
I teach it about more analysis passes.
This updates the two inliner passes to use the inline cost analysis.
Doing so highlights how utterly redundant these two passes are. Either
we should find a cheaper way to do always inlining, or we should merge
the two and just fiddle with the thresholds to get the desired behavior.
I'm leaning increasingly toward the latter as it would also remove the
Inliner sub-class split.
llvm-svn: 173030
|
| |
|
|
|
|
| |
Formatting fixes brought to you by clang-format.
llvm-svn: 173029
|
| |
|
|
|
|
| |
functionality changed.
llvm-svn: 173028
|
| |
|
|
| |
llvm-svn: 173027
|
| |
|
|
|
|
| |
condition in checking for shadow gap in asan_mapping.h
llvm-svn: 173026
|
| |
|
|
| |
llvm-svn: 173025
|
| |
|
|
|
|
| |
add tests for fixits removing static and inline from main
llvm-svn: 173024
|
| |
|
|
| |
llvm-svn: 173023
|
| |
|
|
| |
llvm-svn: 173022
|
| |
|
|
|
|
| |
Android
llvm-svn: 173021
|
| |
|
|
| |
llvm-svn: 173020
|
| |
|
|
|
|
|
| |
Now correctly formats:
class A::B {} n;
llvm-svn: 173019
|
| |
|
|
|
|
|
| |
and reformats a few constructors using clang-format. Only whitespace
changes here.
llvm-svn: 173018
|
| |
|
|
|
|
|
|
|
| |
Previously, we would not detect brace initializer lists in return
statements, thus:
return (a)(b) { 1, 2, 3 };
would put the semicolon onto the next line.
llvm-svn: 173017
|
| |
|
|
| |
llvm-svn: 173016
|
| |
|
|
|
|
| |
shadow mapping and offset are defined in the instrumented modules instead of runtime
llvm-svn: 173015
|
| |
|
|
|
|
| |
don't require executable to be linked with UBSan.' to Mac
llvm-svn: 173014
|
| |
|
|
|
|
| |
shadow mapping/offset are always emitted by the LLVM backend now
llvm-svn: 173013
|
| |
|
|
|
|
| |
This reverts commit r173007.
llvm-svn: 173012
|
| |
|
|
|
|
| |
architectures on OS X and use them in ASan and UBSan build rules
llvm-svn: 173011
|
| |
|
|
| |
llvm-svn: 173010
|
| |
|
|
| |
llvm-svn: 173009
|