- Jun 20, 2013
-
-
Manuel Klimek authored
Most of the tests contributed by Edwin Vane. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184427 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alexander Kornienko authored
Summary: Fixes a problem where \t,\v or \f could lead to a crash when placed as a first character in a line comment. The cause is that rtrim and ltrim handle these characters, but our code didn't, so some invariants could be broken. Reviewers: klimek Reviewed By: klimek CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1013 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184425 91177308-0d34-0410-b5e6-96231b3b80d8
-
Manuel Klimek authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184419 91177308-0d34-0410-b5e6-96231b3b80d8
-
Enea Zaffanella authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184417 91177308-0d34-0410-b5e6-96231b3b80d8
-
Evgeniy Stepanov authored
A workaroudn for PR16386. MSan's operator new aften has side-effects that are miscompiled without this flag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184410 91177308-0d34-0410-b5e6-96231b3b80d8
-
Chandler Carruth authored
-gcc-toolchain foo -> --gcc-toolchain=foo -target foo -> --target=foo I've added legacy aliases for the original spellings. I've updated the canonical tests to check both spellings, and switched all of the -gcc-toolchain usages elsewhere in the test suite to use the new one. I've updated some of the usages of -target to the new syntax, but will finish that in a separate entirely mechanical change once I'm sure this won't get rolled back for some reason (It touches a *huge* number of RUN lines in the test suite unsurprisingly). A nice result is that the three most common flags I end up using when doing cross compiles are all now consistent: --target=, --sysroot=, and --gcc-toolchain=. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184408 91177308-0d34-0410-b5e6-96231b3b80d8
-
Pavel Labath authored
Summary: When doing a reinterpret+dynamic cast from an incomplete type, the analyzer would crash (bug #16308). This fix makes the dynamic cast evaluator ignore incomplete types, as they can never be used in a dynamic_cast. Also adding a regression test. CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1006 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184403 91177308-0d34-0410-b5e6-96231b3b80d8
-
Chandler Carruth authored
seem closely related. (I'm happy to move this if others have a better idea of where to put it.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184402 91177308-0d34-0410-b5e6-96231b3b80d8
-
Chandler Carruth authored
This fixes PR16370, I'll add the test case in a follow-up commit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184401 91177308-0d34-0410-b5e6-96231b3b80d8
-
Eli Friedman authored
up alignment. Fixes utilities/tuple/tuple.tuple/tuple.creation/tuple_cat.pass.cpp from the libc++ testsuite. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184397 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
why not. Apparently GCC supports this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184396 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
return false; in a function returning a pointer. 'false' was a null pointer constant in C++98 but is not in C++11. Punch a very small hole in the initialization rules in C++11 mode to allow this specific case in system headers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184395 91177308-0d34-0410-b5e6-96231b3b80d8
-
Eli Friedman authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184393 91177308-0d34-0410-b5e6-96231b3b80d8
-
Eli Friedman authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184392 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184391 91177308-0d34-0410-b5e6-96231b3b80d8
-
Eli Friedman authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184386 91177308-0d34-0410-b5e6-96231b3b80d8
-
Michael Gottesman authored
[clang-lit] Added the run_long_tests param option/long_tests feature to toggle execution of long running FileCheck tests. This will allow for longer running FileCheck based tests to be committed to clang for use on buildbots, preventing the normal make-check cycle from increasing in time significantly. This is a necessary change in order to commit the end-to-end arm neon intrinsic tests since FileCheck takes ~20 seconds to run said test due to the large amount of neon intrinsics. To force a test to run only when --param run_long_tests=true is passed in use the following requires statement: // REQUIRES: long_tests git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184385 91177308-0d34-0410-b5e6-96231b3b80d8
-
Stephen Lin authored
Revert r184205 and associated patches while investigating issue with broken buildbot (possible interaction with LTO) <rdar://problem/14209661> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184384 91177308-0d34-0410-b5e6-96231b3b80d8
-
Argyrios Kyrtzidis authored
[libclang] Make sure crash-recovery for module-building does not interfere with libclang crash-recovery. This tests llvm commit r184380. rdar://14204560 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184383 91177308-0d34-0410-b5e6-96231b3b80d8
-
Eli Friedman authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184382 91177308-0d34-0410-b5e6-96231b3b80d8
-
Eli Friedman authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184381 91177308-0d34-0410-b5e6-96231b3b80d8
-
Eli Friedman authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184379 91177308-0d34-0410-b5e6-96231b3b80d8
-
Eli Friedman authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184378 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Trieu authored
showing "(null)". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184377 91177308-0d34-0410-b5e6-96231b3b80d8
-
Eli Friedman authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184371 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Jun 19, 2013
-
-
David Blaikie authored
Debug Info: PR14763/r183329 - specify that non-trivial pass-by-value parameters are stored indirectly This is to fix the location information for such parameters to refer to the object accessible through the pointer rather than to the pointer parameter itself. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184367 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alexander Kornienko authored
Summary: A trailing block comment having multiple lines would cause extremely high penalties if the summary length of its lines is more than the column limit. Fixed by always considering only the last line of a multi-line block comment. Removed a long-standing FIXME from relevant tests and added a motivating test modelled after problem cases from real code. Reviewers: klimek Reviewed By: klimek CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1010 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184340 91177308-0d34-0410-b5e6-96231b3b80d8
-
Eli Friedman authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184332 91177308-0d34-0410-b5e6-96231b3b80d8
-
Samuel Benzaquen authored
Added ASTNodeKind as a standalone way to represent node kinds and their hierarchy. This change is to support ongoing work on D815. Reviewers: klimek CC: cfe-commits git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184331 91177308-0d34-0410-b5e6-96231b3b80d8
-
Stephen Lin authored
Corrections to r184205 ('this'-return optimization) due to the wrong version of the patch being committed originally. 1) Removed useless return value of CGCXXABI::EmitConstructorCall and CGCXXABI::EmitVirtualDestructorCall and implementations 2) Corrected last portion of CodeGenCXX/constructor-destructor-return-this to correctly test for non-'this'-return of virtual destructor calls git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184330 91177308-0d34-0410-b5e6-96231b3b80d8
-
Fariborz Jahanian authored
class templates; and similarly, @function works for function templates. // rdar://14124702 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184329 91177308-0d34-0410-b5e6-96231b3b80d8
-
Renato Golin authored
This reverts commit 312e51ca484976c2b1254952ff23d5162ca8edc2. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184324 91177308-0d34-0410-b5e6-96231b3b80d8
-
Renato Golin authored
Now, with a comma. Patch by İsmail Dönmez git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184323 91177308-0d34-0410-b5e6-96231b3b80d8
-
Reid Kleckner authored
CGCleanup.h isn't meant to be included by all of CodeGen according to John. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184321 91177308-0d34-0410-b5e6-96231b3b80d8
-
Reid Kleckner authored
This fixes an issue when parsing atlbase.h. Patch by Will Wilson! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184319 91177308-0d34-0410-b5e6-96231b3b80d8
-
Manuel Klimek authored
This is in preparation for the backwards references to bound nodes, which will expose a lot more about how matches occur. Main changes: - instead of building the tree of bound nodes, we build a "set" of bound nodes and explode all possible match combinations while running through the matchers; this will allow us to also implement matchers that filter down the current set of matches, like "equalsBoundNode" - take the set of bound nodes at the start of the match into consideration when doing memoization; as part of that, reevaluated that memoization gives us benefits that are large enough (it still does - the effect on common match patterns is up to an order of magnitude) - reset the bound nodes when a node does not match, thus never leaking information from partial sub-matcher matches for failing matchers Effects: - we can now correctly "explode" combinatorial matches, for example: allOf(forEachDescendant(...bind("a")), forEachDescendant(...bind("b"))) will now trigger matches for all combinations of matching "a" and "b"s. - we now never expose bound nodes from partial matches in matchers that did not match in the end - this fixes a long-standing issue FIXMEs: - rename BoundNodesTreeBuilder to BoundNodesBuilder or BoundNodesSetBuilder, as we don't build a tree any more; this is out of scope for this change, though - we're seeing some performance regressions (around 10%), but I expect some performance tuning will get that back, and it's easily worth the increase in expressiveness for now git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184313 91177308-0d34-0410-b5e6-96231b3b80d8
-
Rafael Espindola authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184310 91177308-0d34-0410-b5e6-96231b3b80d8
-
Reid Kleckner authored
In Itanium, dynamic classes have one vtable with several different address points for dynamic base classes that can't share vtables. In the MS C++ ABI, each vbtable that can't be shared gets its own symbol, similar to how ctor vtables work in Itanium. However, instead of mangling the subobject offset into the symbol, the unique portions of the inheritance path are mangled into the symbol to make it unique. This patch implements the MSVC 2012 scheme for forming unique vbtable symbol names. MSVC 2010 use the same mangling with a different subset of the path. Implementing that mangling and possibly others is TODO. Each vbtable is an array of i32 offsets from the vbptr that points to it to another virtual base subobject. The first entry of a vbtable always points to the base of the current subobject, implying that it is the same no matter which parent class contains it. Reviewers: rjmccall Differential Revision: http://llvm-reviews.chandlerc.com/D636 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184309 91177308-0d34-0410-b5e6-96231b3b80d8
-
Reid Kleckner authored
gcc's inputs are already added by the InputInfoList passed to Action::ConstructJob. Fixes a regression from r183989. This was manifesting when targetting mingw as an extra input argument to gcc when assembling. It presumably affects other situations where clang calls gcc. Prior to r183989, forwardToGCC() was returning false because the INPUT option defined in OptParser.td had the DriverOption flag set on it. LLVM's Option library does not set this flag for INPUT. Reviewers: espindola Differential Revision: http://llvm-reviews.chandlerc.com/D999 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184308 91177308-0d34-0410-b5e6-96231b3b80d8
-
James Molloy authored
Revert r184302 on Renato's behalf - it broke the bots and he's asked me to revert as he's unavailable. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184307 91177308-0d34-0410-b5e6-96231b3b80d8
-