| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 160216
|
| |
|
|
| |
llvm-svn: 160215
|
| |
|
|
|
|
|
|
|
|
| |
due to
AVX). Currently, if no aligned attribute is specified the alignment of a vector is
inferred from its size. Thus, very large vectors will be over-aligned with no
benefit. Target owners should set this target max.
llvm-svn: 160209
|
| |
|
|
|
|
|
| |
uninitialized variable use, walk back over branches where we've reached all the
non-null successors, not just cases where we've reached all successors.
llvm-svn: 160206
|
| |
|
|
| |
llvm-svn: 160202
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
intrinsics with target-indepdent intrinsics. The first instruction(s) to be
handled are the vector versions of count leading zeros (ctlz).
The changes here are to clang so that it generates a target independent
vector ctlz when it sees an ARM dependent vector ctlz. The changes in llvm
are to match the target independent vector ctlz and in VMCore/AutoUpgrade.cpp
to update any existing bc files containing ARM dependent vector ctlzs with
target-independent ctlzs. There are also changes to an existing test case in
llvm for ARM vector count instructions and a new test for the bitcode upgrade.
<rdar://problem/11831778>
There is deliberately no test for the change to clang, as so far as I know, no
consensus has been reached regarding how to test neon instructions in clang;
q.v. <rdar://problem/8762292>
llvm-svn: 160201
|
| |
|
|
|
|
|
| |
multiple %diff's, only print the first tree and fallback to inline printing
for the rest of the diagnostic.
llvm-svn: 160193
|
| |
|
|
|
|
| |
This fixes a bug in __builtin_object_size() codegen
llvm-svn: 160191
|
| |
|
|
|
|
| |
line with Statement AST nodes.
llvm-svn: 160182
|
| |
|
|
|
|
| |
we might use the declaration to build a type before seeing the definition.
llvm-svn: 160176
|
| |
|
|
|
|
| |
behavior since gcc pr30066. Thanks to Benjamin Kramer for pointing it out.
llvm-svn: 160174
|
| |
|
|
| |
llvm-svn: 160172
|
| |
|
|
|
|
| |
Patch by Tobias Koenig, some test changes by myself.
llvm-svn: 160167
|
| |
|
|
|
|
|
| |
to the same signature. Fix a bug in the type printer which would cause this
diagnostic to print wonderful types like 'const const int *'.
llvm-svn: 160161
|
| |
|
|
|
|
|
| |
canonical decl for the template, but that we were not merging attributes for
templates at all!
llvm-svn: 160157
|
| |
|
|
|
|
| |
declarations.
llvm-svn: 160156
|
| |
|
|
|
|
| |
start tags' and 'HTML close tags' to 'HTML end tags' according to HTML spec.
llvm-svn: 160153
|
| |
|
|
|
|
| |
for pointing this!
llvm-svn: 160149
|
| |
|
|
|
|
| |
attribute.
llvm-svn: 160139
|
| |
|
|
|
|
| |
PR12785
llvm-svn: 160121
|
| |
|
|
| |
llvm-svn: 160118
|
| |
|
|
| |
llvm-svn: 160112
|
| |
|
|
|
|
| |
pr13338.
llvm-svn: 160105
|
| |
|
|
|
|
| |
behavior and is the first step in fixing pr13338.
llvm-svn: 160104
|
| |
|
|
|
|
|
|
|
| |
Failing Tests (3):
Clang :: Index/complete-cxx-inline-methods.cpp
Clang :: Index/recursive-cxx-member-calls.cpp
Clang :: SemaTemplate/inject-templated-friend-post.cpp
llvm-svn: 160103
|
| |
|
|
| |
llvm-svn: 160102
|
| |
|
|
|
|
| |
sense to pass (unsigned)-(unsigned) to abs().
llvm-svn: 160097
|
| |
|
|
| |
llvm-svn: 160096
|
| |
|
|
|
|
|
|
| |
Previously we were using the static type of the base object to inline
methods, whether virtual or non-virtual. Now, we try to see if the base
object has a known type, and if so ask for its implementation of the method.
llvm-svn: 160094
|
| |
|
|
|
|
|
|
| |
flag as noted in the OpenCL Spec.
Includes a test case.
llvm-svn: 160092
|
| |
|
|
|
|
|
| |
Fixes PR13314, clang crashing on blocks refering to an enclosing local
when the enclosing function returns void.
llvm-svn: 160089
|
| |
|
|
|
|
|
| |
static_assert fails when parsing the template, don't diagnose it again on every
instantiation.
llvm-svn: 160088
|
| |
|
|
| |
llvm-svn: 160087
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
diagnostics implemented -- see testcases.
I created a new TableGen file for comment diagnostics,
DiagnosticCommentKinds.td, because comment diagnostics don't logically
fit into AST diagnostics file. But I don't feel strongly about it.
This also implements support for self-closing HTML tags in comment
lexer and parser (for example, <br />).
In order to issue precise diagnostics CommentSema needs to know the
declaration the comment is attached to. There is no easy way to find a decl by
comment, so we match comments and decls in lockstep: after parsing one
declgroup we check if we have any new, not yet attached comments. If we do --
then we do the usual comment-finding process.
It is interesting that this automatically handles trailing comments.
We pick up not only comments that precede the declaration, but also
comments that *follow* the declaration -- thanks to the lookahead in
the lexer: after parsing the declgroup we've consumed the semicolon
and looked ahead through comments.
Added -Wdocumentation-html flag for semantic HTML errors to allow the user to
disable only HTML warnings (but not HTML parse errors, which we emit as
warnings in -Wdocumentation).
llvm-svn: 160078
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
as "volatile", meaning there's a high enough chance that they may
change while we are trying to use them.
This flag is only enabled by libclang.
Currently "volatile" source files will be stat'ed immediately
before opening them, because the file size stat info
may not be accurate since when we got it (e.g. from the PCH).
This avoids crashes when trying to reference mmap'ed memory
from a file whose size is not what we expect.
Note that there's still a window for a racing issue to occur
but the window for it should be way smaller than before.
We can consider later on to avoid mmap completely on such files.
rdar://11612916
llvm-svn: 160074
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is accomplished by making VerifyDiagnosticsConsumer a CommentHandler,
which then only reads the -verify directives that are actually in live
blocks of code. It also makes it simpler to handle -verify directives that
appear in header files, though we still have to manually reparse some files
depending on how they are generated.
This requires some test changes. In particular, all PCH tests now have their
-verify directives outside the "header" portion of the file, using the @line
syntax added in r159978. Other tests have been modified mostly to make it
clear what is being tested, and to prevent polluting the expected output with
the directives themselves.
Patch by Andy Gibbs! (with slight modifications)
The new Frontend/verify-* tests exercise the functionality of this commit,
as well as r159978, r159979, and r160053 (Andy's other -verify enhancements).
llvm-svn: 160068
|
| |
|
|
|
|
|
|
| |
CompilationDatabase, make it implement findCompilationDatabaseForDirectory in CustomCompilationDatabase.h and set USE_COSTUM_COMPILATION_DATABASE.
Differential Revision: http://llvm-reviews.chandlerc.com/D4
llvm-svn: 160061
|
| |
|
|
|
|
|
| |
from GNU binutils supporting multi-arch folder for ARM target.
Patch by Jiangning Liu <jiangning.liu@arm.com>.
llvm-svn: 160060
|
| |
|
|
| |
llvm-svn: 160057
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously we'd halt at the fatal error as expected, but not actually emit
any -verify-related diagnostics. This lets us catch cases that emit a
/different/ fatal error from the one we expected.
This is implemented by adding a "force emit" mode to DiagnosticBuilder, which
will cause diagnostics to immediately be emitted regardless of current
suppression. Needless to say this should probably be used /very/ sparingly.
Patch by Andy Gibbs! Tests for all of Andy's -verify patches coming soon.
llvm-svn: 160053
|
| |
|
|
| |
llvm-svn: 160052
|
| |
|
|
|
|
|
|
| |
Fixes bug 13322
Patch by Dmitry Mikushin
llvm-svn: 160050
|
| |
|
|
| |
llvm-svn: 160049
|
| |
|
|
| |
llvm-svn: 160041
|
| |
|
|
|
|
|
| |
instantiation depends on the template, its arguments and parameters, but not
where it is instantiated.
llvm-svn: 160034
|
| |
|
|
|
|
|
|
|
|
| |
there's something going on there. Remove the unconditional line entry
and only add one if we're emitting cleanups (any other statements
would be handled normally).
Fixes rdar://9199234
llvm-svn: 160033
|
| |
|
|
|
|
|
|
|
|
| |
This is probably not so useful yet because it is not path-sensitive, though
it does try to show inlining with indentation.
This also adds a dump() method to CallEvent, which should be useful for
debugging.
llvm-svn: 160030
|
| |
|
|
|
|
|
|
|
| |
C++ method calls and C function calls both appear as CallExprs in the AST.
This was causing crashes for an object that had a 'free' method.
<rdar://problem/11822244>
llvm-svn: 160029
|
| |
|
|
|
|
|
| |
value-initialization for an array of class type with a trivial default
constructor.
llvm-svn: 160024
|
| |
|
|
|
|
|
|
| |
Also contains a number of tweaks to inlining that are necessary
for constructors and destructors. (I have this enabled on a private
branch, but it is very much unstable.)
llvm-svn: 160023
|