a4de17562d13d7a8188108243c4cfbd52f33229a |
|
04-Mar-2016 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master clang for rebase to r256229 http://b/26987366 (cherry picked from commit 87d948ecccffea9e9e37d0d053b246e2d6d6c47b) Change-Id: I10ca401a280e905253aafabad9118693a2f24ffb
/external/clang/lib/AST/Stmt.cpp
|
b6d6993e6e6d3daf4d9876794254d20a134e37c2 |
|
01-Jul-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master clang for rebase to r239765 Change-Id: I0393bcc952590a7226af8c4b58534a8ee5fd2d99
/external/clang/lib/AST/Stmt.cpp
|
58878f85ab89b13e9eea4af3ccf055e42c557bc8 |
|
06-May-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master clang for rebase to r235153 Change-Id: Ia94bbcb6da7c75b6e7c2afedd1001094d62a7324
/external/clang/lib/AST/Stmt.cpp
|
3ea9e33ea25e0c2b12db56418ba3f994eb662c04 |
|
08-Apr-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master clang for rebase to r233350 Change-Id: I12d4823f10bc9e445b8b86e7721b71f98d1df442
/external/clang/lib/AST/Stmt.cpp
|
0e2c34f92f00628d48968dfea096d36381f494cb |
|
23-Mar-2015 |
Stephen Hines <srhines@google.com> |
Update aosp/master clang for rebase to r230699. Change-Id: I6a546ab3d4ae37119eebb735e102cca4f80ab520
/external/clang/lib/AST/Stmt.cpp
|
176edba5311f6eff0cad2631449885ddf4fbc9ea |
|
01-Dec-2014 |
Stephen Hines <srhines@google.com> |
Update aosp/master Clang for rebase to r222490. Change-Id: Ic557ac55e97fbf6ee08771c7b7c3594777b0aefd
/external/clang/lib/AST/Stmt.cpp
|
c568f1e98938584c0ef0b12ae5018ff7d90a4072 |
|
21-Jul-2014 |
Stephen Hines <srhines@google.com> |
Update Clang for rebase to r212749. This also fixes a small issue with arm_neon.h not being generated always. Includes a cherry-pick of: r213450 - fixes mac-specific header issue r213126 - removes a default -Bsymbolic on Android Change-Id: I2a790a0f5d3b2aab11de596fc3a74e7cbc99081d
/external/clang/lib/AST/Stmt.cpp
|
6bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89 |
|
29-May-2014 |
Stephen Hines <srhines@google.com> |
Update Clang for 3.5 rebase (r209713). Change-Id: I8c9133b0f8f776dc915f270b60f94962e771bc83
/external/clang/lib/AST/Stmt.cpp
|
651f13cea278ec967336033dd032faef0e9fc2ec |
|
24-Apr-2014 |
Stephen Hines <srhines@google.com> |
Updated to Clang 3.5a. Change-Id: I8127eb568f674c2e72635b639a3295381fe8af82
/external/clang/lib/AST/Stmt.cpp
|
d195bc38fd424b0c928e3c354038a8ca6e2ccac3 |
|
01-Oct-2013 |
Alexey Bataev <a.bataev@hotmail.com> |
[OpenMP] Added parsing and semantic analysis for firstprivate clause git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191730 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
bafe46fe35ff58cc10487ba8bdcbcccd6d3319e7 |
|
11-Sep-2013 |
Eli Friedman <eli.friedman@gmail.com> |
Add unused markings to suppress warnings. trunk clang is a bit more aggressive about emitting unused-declaration warnings, so adjust some AST code to match. Specifically, use LLVM_ATTRIBUTE_UNUSED for declarations which are never supposed to be referenced, and turn references to declarations which are supposed to be referenced into odr-uses. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190443 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
0c018357b8bbb1f96bbf622a5807421e626b4228 |
|
06-Sep-2013 |
Alexey Bataev <a.bataev@hotmail.com> |
OpenMP: Data-sharing attributes analysis and clause 'shared' (fixed test threadprivate_messages.cpp) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190183 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
b2b169aef03109a3a08bd93cba72894a83288dc4 |
|
03-Sep-2013 |
Pavel Labath <labath@google.com> |
Remove useless reinterpret_casts from Stmt.cpp Summary: I have no idea why these were there in the first place, but now they are certainly not necessary. Reviewers: rsmith CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1581 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189813 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
4367829b41e89d2f3dfae94a97af40ffa01c56c9 |
|
03-Sep-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Revert "OpenMP: Data-sharing attributes analysis and clause 'shared'" This reverts commit r189795. threadprivate_messages.cpp is faling on windows. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189811 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
8f1a2db8649eb151ee620273dcf34b700176430f |
|
03-Sep-2013 |
Alexey Bataev <a.bataev@hotmail.com> |
OpenMP: Data-sharing attributes analysis and clause 'shared' git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189795 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
8b4b98b7cb18cc4a99cca0aefa515cc8756dc06d |
|
22-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Constify some more ASTContext& uses. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188989 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
0b861560d9b4b0eb2b36d0f32cc7819efe9ee5f2 |
|
22-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Constify the ASTContext& passed to Stmt creation functions. Also constify the context in couple other functions that are called from creation functions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188986 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
9b9a5bf53edc724574593bbedcb55eca0d9995c6 |
|
21-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Revert accidental commit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188862 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
b7a95d2941869f2dfd0d2f0e805f794b46dd4b55 |
|
21-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Replace avx-512 with avx512f to match llvm side and what gcc patches appear to be using. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188860 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
ed218d05aa3d429208b0eb2204707c75b87d2fee |
|
20-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Revert r188756 because some other changes snuck in with it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188757 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
dab7845798d673cabeef792451354aeb394cdd54 |
|
20-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Add AVX-512 feature flag and knl cpu to clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188756 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
536bcedb8e6fea6458789f99f0ef554ce65514cc |
|
19-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Make the version of Stmt::operator new that takes ASTContext* call the ASTContext& version in Stmt inline instead of having two out of line functions that both call to the global versions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188648 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
bdf253de659442bc3fd4fc28d6145ad46113a0a7 |
|
18-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Revert r188644 to unbreak buildbots. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188645 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
c2a99813e408651eee2a1d6a5dbf4edc10ce6827 |
|
18-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Remove Stmt::operator new that takes a ASTContext*. All callers use the ASTContext& version. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188644 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
5b3ebb4356ac62abd8767c4c3388b773d9d61802 |
|
18-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Remove throw() from Stmt::operator new so the compiler will omit the null check on the result since ASTContext allocator won't return null. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188641 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
05ed1a0587edcf3b8ee84a67d8c8ca76753d1fc1 |
|
18-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Make expression allocation methods use a 'const' reference to the ASTContext since the underlying operator new only needs a const reference. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188636 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
4fa7eab771ab8212e1058bd1a91061ff120c8fbb |
|
19-Jul-2013 |
Alexey Bataev <a.bataev@hotmail.com> |
OpenMP: basic support for #pragma omp parallel git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186647 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
0a598fd7e428b5eb28b67770a66f3976ac365e42 |
|
27-Jun-2013 |
Eli Friedman <eli.friedman@gmail.com> |
Delete dead code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@185101 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
0d8e9646bc000bab521ce52ed294209a92298cef |
|
16-May-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
First pass of semantic analysis for init-captures: check the initializer, build a FieldDecl from it, and propagate both into the closure type and the LambdaExpr. You can't do much useful with them yet -- you can't use them within the body of the lambda, because we don't have a representation for "the this of the lambda, not the this of the enclosing context". We also don't have support or a representation for a nested capture of an init-capture yet, which was intended to work despite not being allowed by the current standard wording. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181985 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
9fd6b8f5a73788f288edd01fa99d434d1e6588ad |
|
04-May-2013 |
Wei Pan <wei.pan@intel.com> |
Implement template support for CapturedStmt - Sema tests added and CodeGen tests are pending Differential Revision: http://llvm-reviews.chandlerc.com/D728 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181101 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
dc5be4f54d6415cb88b2f8a7c5bc9011e332b9b8 |
|
03-May-2013 |
Ben Langmuir <ben.langmuir@intel.com> |
Serialization for captured statements Add serialization for captured statements and captured decls. Also add a const_capture_iterator to CapturedStmt. Test contributed by Wei Pan Differential Revision: http://llvm-reviews.chandlerc.com/D727 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181048 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
aeeacf725c9e0ddd64ea9764bd008e5b6873ce51 |
|
03-May-2013 |
John McCall <rjmccall@apple.com> |
Move parsing of identifiers in MS-style inline assembly into the actual parser and support arbitrary id-expressions. We're actually basically set up to do arbitrary expressions here if we wanted to. Assembly operands permit things like A::x to be written regardless of language mode, which forces us to embellish the evaluation context logic somewhat. The logic here under template instantiation is incorrect; we need to preserve the fact that an expression was unevaluated. Of course, template instantiation in general is fishy here because we have no way of delaying semantic analysis in the MC parser. It's all just fishy. I've also fixed the serialization of MS asm statements. This commit depends on an LLVM commit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180976 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
6afcf8875d4e447645cd7bf3733dd8e2eb8455dc |
|
16-Apr-2013 |
Tareq A. Siraj <tareq.a.sriaj@intel.com> |
Sema for Captured Statements Add CapturedDecl to be the DeclContext for CapturedStmt, and perform semantic analysis. Currently captures all variables by reference. TODO: templates Author: Ben Langmuir <ben.langmuir@intel.com> Differential Revision: http://llvm-reviews.chandlerc.com/D433 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179618 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
051303ce09291dfbed537fa33b0d8a4d92c82b75 |
|
16-Apr-2013 |
Tareq A. Siraj <tareq.a.sriaj@intel.com> |
Implement CapturedStmt AST CapturedStmt can be used to implement generic function outlining as described in http://lists.cs.uiuc.edu/pipermail/cfe-dev/2013-January/027540.html. CapturedStmt is not exposed to the C api. Serialization and template support are pending. Author: Wei Pan <wei.pan@intel.com> Differential Revision: http://llvm-reviews.chandlerc.com/D370 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179615 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
3f6f51e28231f65de9c2dd150a2d757b2162cfa3 |
|
08-Feb-2013 |
Jordan Rose <jordan_rose@apple.com> |
Excise <cctype> from Clang (except clang-tblgen) in favor of CharInfo.h. Nearly all of these changes are one-to-one replacements; the few that aren't have to do with custom identifier validation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174768 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
07cf58c96dc599d1c25dae4efd9445b6f5d3596c |
|
29-Dec-2012 |
Nico Weber <nicolasweber@gmx.de> |
ArrayRefize CXXTryStmt. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171239 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
d36aa359e2f45cd22c7366a015ad94de08044dbb |
|
29-Dec-2012 |
Nico Weber <nicolasweber@gmx.de> |
ArrayRefize a CompoundStmt constructor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171238 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
65d78312ce026092cb6e7b1d4d06f05e18d02aa0 |
|
25-Dec-2012 |
Erik Verbruggen <erikjv@me.com> |
Fix for PR12222. Changed getLocStart() and getLocEnd() to be required for Stmts, and make getSourceRange() optional. The default implementation for getSourceRange() is build the range by calling getLocStart() and getLocEnd(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171067 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
a93d0f280693b8418bc88cf7a8c93325f7fcf4c6 |
|
01-Dec-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Include pruning and general cleanup. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169095 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
2fa67efeaf66a9332c30a026dc1c21bef6c33a6c |
|
01-Dec-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Pull the Attr iteration parts out of Attr.h, so including DeclBase.h doesn't pull in all the generated Attr code. Required to pull some functions out of line, but this shouldn't have a perf impact. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169092 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
e54cba1ec0b0e498ee67d200289035797932e714 |
|
16-Oct-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Move some logic around to simplify the interface between the front-end and the AsmParser. No functional change intended. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166063 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
568ba871bbac959029671b81f8e531edb7e0d7d6 |
|
04-Sep-2012 |
Joao Matos <ripzonetriton@gmail.com> |
Revert r163083 per chandlerc's request. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163149 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
12603e259170cd02084f51b17b43e9c9c4fce354 |
|
04-Sep-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Fix an illegal index and an 80-column violation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163143 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
5be92de217a1940d0e109abd0f401df4480c1a4b |
|
02-Sep-2012 |
Joao Matos <ripzonetriton@gmail.com> |
Implemented parsing and AST support for the MS __leave exception statement. Also a minor fix to __except printing in StmtPrinter.cpp. Thanks to Aaron Ballman for review. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163083 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
00d16371f581af9ac8ac5d9ab2386cb2cfed61c1 |
|
28-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Have generateAsmString() return the AsmString computed by Sema. We still need to translate the string, but this at least gets us one step closer to using the more general EmitAsmStmt() codegen function. No functional change intended. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162785 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
89fb6d7eba51c7864ec544e07accd23b24057122 |
|
28-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Add constraints to MSAsmStmt. We don't currently compute the constraints, so in the interim we speculatively assume a 'r' constraint. This is expected to work for most cases on x86. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162784 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
92527012d4b8bc0c3d49acc471ebe5590fe97fba |
|
28-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Use dyn_cast<> here to simplify logic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162773 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
aba59aafd47ded6d483894cd6ab7bff494eb7587 |
|
28-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Make the AsmStmt class non-virtual. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162768 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
c4fb221120f2c8b158082d0b2b9daa29d2f65d5b |
|
28-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Hoist more common code into the AsmStmt base class. Add stubs with FIXMEs for unimplemented features. No functional change intended. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162716 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
33f0558f75f70061707d1388e305b8f92f4e55de |
|
28-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Add virtual function, getClobber, that returns a StringRef. More work towards unifying asm stmt codegen. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162712 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
da083b2ce8db27ce6e508cb77cb12c0fc8b7cad9 |
|
27-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Rename GenerateAsmString to generateAsmString to conform with coding standards. Also, add stub for MSAsmStmt class as part of unifying codegen logic for AsmStmts. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162696 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
066ef86b435a5c567778c25fc201a2831049ad4b |
|
27-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Hoist common logic into the AsmStmt base class. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162692 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
728581e7702cafe32cc9e1b5b61a15f5042ce189 |
|
27-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Add a new base class, AsmStmt, for the GCCAsmStmt and MSAsmStmt classes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162691 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
df5faf5e7ae6823d0af0b801c4ac26d47f2cee97 |
|
25-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] As part of a larger refactoring, rename AsmStmt to GCCAsmStmt. No functional change intended. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162632 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
be3ace834ee7438915e73d2115365d57d03ceb99 |
|
24-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Refactor code. No functional change intended. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162568 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
633abb0ea01d37ab9c8e4ce1ee9e48894a12dfca |
|
24-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Add the basic APIs for Exprs to the MSAsmStmt AST. Next we need generate the Input/Output expressions using Sema::ActOnIdExpression(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162509 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
df4ee102aa909e2f40c294701bfeffac63e8d29b |
|
20-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Remove old cruft now that MS-style asms their own code path. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162210 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
058ab170a5b8597f32c3f343a1e9de2cd7b05848 |
|
16-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Add inputs and outputs to AST. No functional change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162000 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
7bd092b054444e9800e8de1d8d71c408dbdc8ead |
|
15-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Add the left brace source location and improve the pretty printer. Patch by Enea Zaffanella <zaffanella@cs.unipr.it>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161958 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
92570bd1597f355d5673a94960323f81d99c4921 |
|
15-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Remove the last bits of LineEnds. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161904 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
33c72e1c0bbb477cf36dd7becd933b860c42ed8c |
|
10-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Avoid extra allocations by making this an array of StringRefs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161703 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
e790bc32ca3eb7cc396b45071d7987776e965ed7 |
|
10-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Fix a memory leak introduced in r161686. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161698 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
4399ea9d473365224d9e4db0cd94aab849eb59b7 |
|
10-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Add clobbers to AST representation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161686 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
cace2103efe3449c406bcdfd4874dfb1e94c811a |
|
09-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Use StringRef here, per Jordan's suggestion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161619 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
62f22b87801882646418bae85111e565f7a53ddb |
|
08-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Refactor the logic to generate the AsmString into Sema. No functional change intended. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161518 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
3a32c9c565f970fd319b97a6056a4725cfa4f0f5 |
|
08-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
Add the IsSimple/IsVolatile parameters to the MSAsmStmt constructor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161503 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
0e2a86802be7f888c29adf09fe23ad35bc6fb35d |
|
08-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
Whitespace. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161455 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
79efe24e125553b7fd4a35ffb3b7a45c4f1e661a |
|
07-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Stmt destructors are never called, so allocate the AsmToks using the ASTContext BumpPtr. Also use the preferred llvm::ArrayRef interface. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161373 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
8f726de55412870ef70e788b852c6cc50873e15b |
|
06-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Pass Tokens to Sema and store them in the AST. No functional change intended. No test case as there's no real way to test at this time. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161342 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
4990890fc9428f98bef90ba349203a648c592778 |
|
09-Jul-2012 |
Alexander Kornienko <alexfh@google.com> |
Inline storage of attributes in AttributedStmt. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159925 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
3a2d0fb726aca3096b5c1ea9be734417060f34d7 |
|
04-Jul-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Split out the "empty" case for compound statement into a separate ctor. Move the ASTContext-dependent version out of line. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159717 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
8cd64b4c5553fa6284d248336cb7c82dc960a394 |
|
11-Jun-2012 |
Chad Rosier <mcrosier@apple.com> |
Etch out the code path for MS-style inline assembly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158325 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
534986f2b21e6050bf00163cd6423fd92155a6ed |
|
14-Apr-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Add an AttributedStmt type to represent a statement with C++11 attributes attached. Since we do not support any attributes which appertain to a statement (yet), testing of this is necessarily quite minimal. Patch by Alexander Kornienko! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154723 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
96a0014f9b963d8a987f1cccd48808a47f9c6331 |
|
09-Mar-2012 |
Daniel Dunbar <daniel@zuster.org> |
[AST/Sema/libclang] Replace getSourceRange().getBegin() with getLocStart(). - getSourceRange().getBegin() is about as awesome a pattern as .copy().size(). I already killed the hot paths so this doesn't seem to impact performance on my tests-of-the-day, but it is a much more sensible (and shorter) pattern. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152419 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
90e25a8b2cc5d006e4ced052bcdb40c8af999456 |
|
09-Mar-2012 |
Daniel Dunbar <daniel@zuster.org> |
[AST] Reimplement Stmt::getLoc{Start,End} to dispatch to subclass overloads. - getSourceRange() can be very expensive, we should try to avoid it if at all possible. In conjunction with the previous commit I measured a ~2% speedup on 403.gcc/combine.c and a 3% speedup on OmniGroupFrameworks/NSBezierPath-OAExtensions.m. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152411 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
02892a65b18875a04c7ed5eadb3a13be801ab477 |
|
05-Mar-2012 |
Daniel Dunbar <daniel@zuster.org> |
AST/stats: Don't effectively use an out-of-line function to return a static bool. Ugh. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152062 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
3026348bd4c13a0f83b59839f64065e0fcbea253 |
|
20-Jan-2012 |
David Blaikie <dblaikie@gmail.com> |
More dead code removal (using -Wunreachable-code) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148577 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
a1364be341550d71dff27dd8de0c6872ba6c707e |
|
10-Sep-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Extend the Stmt AST to make it easier to look through label, default, and case statements. Use this to make the logic in the CFG builder more robust at finding the actual statements within a compound statement, even when there are many layers of labels obscuring it. Also extend the test cases for a large chunk of PR10063. Still more work to do here though. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139437 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
bcfd1f55bfbb3e5944cd5e03d07b343e280838c4 |
|
02-Sep-2011 |
Douglas Gregor <dgregor@apple.com> |
Extend the ASTContext constructor to delay the initialization of builtin types (When requested). This is another step toward making ASTUnit build the ASTContext as needed when loading an AST file, rather than doing so after the fact. No actual functionality change (yet). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138985 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
5f9e272e632e951b1efe824cd16acb4d96077930 |
|
23-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
remove unneeded llvm:: namespace qualifiers on some core types now that LLVM.h imports them into the clang namespace. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135852 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
7e5e5f4cc36fe50f46ad76dca7a266434c94f475 |
|
07-Jul-2011 |
John McCall <rjmccall@apple.com> |
In ARC, reclaim all return values of retainable type, not just those where we have an immediate need of a retained value. As an exception, don't do this when the call is made as the immediate operand of a __bridge retain. This is more in the way of a workaround than an actual guarantee, so it's acceptable to be brittle here. rdar://problem/9504800 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134605 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
bc57f3cfada779521b579ba184d70e0a6f98d62f |
|
05-Jul-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Don't overread the buffer when an %x escape in inline asm ends prematurely. Tested by valgrind & Sema/asm.c. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134404 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
b43c8ec359293df0c1fc250201930f4461c835f8 |
|
04-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Switch the Decl and Stmt stats printing to use llvm::errs() instead of fprintf, and to be more consistent in formatting with the other stats printing routines. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134374 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
28bbe4b8acc338476fe0825769b41fb32b423c72 |
|
28-Apr-2011 |
John Wiegley <johnw@boostpro.com> |
Parsing/AST support for Structured Exception Handling Patch authored by Sohail Somani. Provide parsing and AST support for Windows structured exception handling. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
ad762fcdc16b9e4705b12b09d92b8c026212b906 |
|
15-Apr-2011 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Add support for C++0x's range-based for loops, as specified by the C++11 draft standard (N3291). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129541 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
c4002c7e725aec26f2c7bd04fce02595f8e2bb45 |
|
28-Feb-2011 |
Chris Lattner <sabre@nondot.org> |
tidy up git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126595 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
935f0f01c1ed3c2052b797ac035d57a85b78adc4 |
|
21-Feb-2011 |
Chris Lattner <sabre@nondot.org> |
add one more case of mismatched input/output constraints. When the mismatch is due to a larger input operand that is a constant, truncate it down to the size of the output. This allows us to accept some cases in the linux kernel and elsewhere. Pedantically speaking, we generate different code than GCC, though I can't imagine how it would matter: Clang: movb $-1, %al frob %al GCC: movl $255, %eax frob %al git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126148 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
ad8dcf4a9df0e24051dc31bf9e6f3cd138a34298 |
|
17-Feb-2011 |
Chris Lattner <sabre@nondot.org> |
Step #1/N of implementing support for __label__: split labels into LabelDecl and LabelStmt. There is a 1-1 correspondence between the two, but this simplifies a bunch of code by itself. This is because labels are the only place where we previously had references to random other statements, causing grief for AST serialization and other stuff. This does cause one regression (attr(unused) doesn't silence unused label warnings) which I'll address next. This does fix some minor bugs: 1. "The only valid attribute " diagnostic was capitalized. 2. Various diagnostics printed as ''labelname'' instead of 'labelname' 3. This reduces duplication of label checking between functions and blocks. Review appreciated, particularly for the cindex and template bits. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125733 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
086eb9f93eadbc63a12770e3457dfe2c6d8f7c30 |
|
09-Feb-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Non-void functions need to return some value. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125185 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
f8c7fdbfc6854a11f0823dd11514af5a8d759aff |
|
09-Feb-2011 |
John McCall <rjmccall@apple.com> |
Give these little helper functions definitions so that newer gccs stop complaining. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125184 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
63c00d7f35fa060c0a446c9df3a4402d9c7757fe |
|
09-Feb-2011 |
John McCall <rjmccall@apple.com> |
Remove vtables from the Stmt hierarchy; this was pretty easy as there were only three virtual methods of any significance. The primary way to grab child iterators now is with Stmt::child_range children(); Stmt::const_child_range children() const; where a child_range is just a std::pair of iterators suitable for being llvm::tie'd to some locals. I've left the old child_begin() and child_end() accessors in place, but it's probably a substantial penalty to grab the iterators individually now, since the switch-based dispatch is kindof inherently slower than vtable dispatch. Grabbing them together is probably a slight win over the status quo, although of course we could've achieved that with vtables, too. I also reclassified SwitchCase (correctly) as an abstract Stmt class, which (as the first such class that wasn't an Expr subclass) required some fiddling in a few places. There are somewhat gross metaprogramming hooks in place to ensure that new statements/expressions continue to implement getSourceRange() and children(). I had to work around a recent clang bug; dgregor actually fixed it already, but I didn't want to introduce a selfhosting dependency on ToT. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125183 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
44aa1f397855f130e88e62ffc1029f7f83bb5d2e |
|
20-Nov-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Revert r119838 "Don't warn for empty 'if' body if there is a macro that expands to nothing" and use a better and more general approach, where NullStmt has a flag to indicate whether it was preceded by an empty macro. Thanks to Abramo Bagnara for the hint! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119887 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
a25b6a4b43e8b9611f7506e5fe1b448833b10a46 |
|
19-Nov-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Don't warn for empty 'if' body if there is a macro that expands to nothing, e.g: if (condition) CALL(0); // empty macro but don't warn for empty body. Fixes rdar://8436021. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119838 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
3248854a5d16e1de17c58e05f726bdef9f042df2 |
|
30-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
Rename alignof -> alignOf to avoid irritating C++'0x compilers, PR8423 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117775 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
95c225de9fa3d79f70ef5008c0279580a7d9dcad |
|
28-Oct-2010 |
John McCall <rjmccall@apple.com> |
Implement an indirect-goto optimization for goto *&&lbl and respect this in the scope checker. With that done, turn an indirect goto into a protected scope into a hard error; otherwise IR generation has to start worrying about declarations not dominating their scopes, as exemplified in PR8473. If this really affects anyone, I can probably adjust this to only hard-error on possible indirect gotos into VLA scopes rather than arbitrary scopes. But we'll see how people cope with the aggressive change on the marginal feature. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117539 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
8e6285af719adc6f86d6faa235d22a08eb68ee3a |
|
26-Oct-2010 |
John McCall <rjmccall@apple.com> |
Optimize field space usage in CompoundStmt, LabelStmt, Expr, and CastExpr. There's probably still significant padding waste on x86-64 UNIXen, but the difference in 32-bit compiles should be significant. There are a lot of Expr nodes left that could lose a word this way. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117359 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
780d885e77710626695e581e56aef228b291a9b7 |
|
09-Sep-2010 |
Ted Kremenek <kremenek@apple.com> |
Initialize 'AllEnumCasesCovered' in SwitchStmt's constructor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113448 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
2de56d1d0c3a504ad1529de2677628bdfbb95cd4 |
|
25-Aug-2010 |
John McCall <rjmccall@apple.com> |
GCC didn't care for my attempt at API compatibility, so brute-force everything to the new constants. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112047 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
2f4eaef37476ae6891ede8ba215d0f6fd093629b |
|
17-Aug-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Convert all uses of StringLiteral::getStrData() to StringLiteral::getString() and remove getStrData(). Patch by Peter Davies (with some tweaks). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111229 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
ff331c15729f7d4439d253c97f4d60f2a7ffd0c6 |
|
25-Jul-2010 |
Douglas Gregor <dgregor@apple.com> |
Remove the vast majority of the Destroy methods from the AST library, since we aren't going to be calling them ever. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109377 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
7cb45e37b6f924d9ddbc53ac023bbaadb4ca3534 |
|
22-Jul-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Support C++ try/catch statements for PCH. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109112 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
db2fa8a7eb67b1e8f32a590b8e000e1259cff91a |
|
06-Jul-2010 |
Tom Care <tcare@apple.com> |
Added a path-sensitive idempotent operation checker (-analyzer-idempotent-operation). Finds idempotent and/or tautological operations in a path sensitive context, flagging operations that have no effect or a predictable effect. Example: { int a = 1; int b = 5; int c = b / a; // a is 1 on all paths } - New IdempotentOperationChecker class - Moved recursive Stmt functions in r107675 to IdempotentOperationChecker - Minor refactoring of SVal to allow checking for any integer - Added command line option for check - Added basic test cases git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107706 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
7d6228fc77baf405c6554bb47904fc197e33b488 |
|
06-Jul-2010 |
Tom Care <tcare@apple.com> |
Added several helper functions to Stmt to recursively check for different elements (macros, enum constants, etc). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107675 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
43dec6bbde2d0a16c35978983761c8b7030c8e18 |
|
22-Jun-2010 |
Douglas Gregor <dgregor@apple.com> |
Alter the internal representation of the condition variable in if/while/switch/for statements to ensure that walking the children of these statements actually works. Previously, we stored the condition variable as a VarDecl. However, StmtIterator isn't able to walk from a VarDecl to a set of statements, and would (in some circumstances) walk beyond the end of the list of statements, cause Bad Behavior. In this change, we've gone back to representing the condition variables as DeclStmts. While not as memory-efficient as VarDecls, it greatly simplifies iteration over the children. Fixes the remainder of <rdar://problem/8104754>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106504 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
7381d5cfbd599fa2b9e215011ad7cbd449de231a |
|
18-May-2010 |
Sean Hunt <rideau3@gmail.com> |
Switch over the tablegen to use much prettier range technology Also rename ABSTRACT to ABSTRACT_STMT, in keeping with the other .def files git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104017 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
4bfe1968410ea8ffe3b4f629addd7c4bcf484765 |
|
05-May-2010 |
Sean Hunt <rideau3@gmail.com> |
Reapplying patch to change StmtNodes.def to StmtNodes.td, this time with no whitespace. This will allow statements to be referred to in attribute TableGen files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103087 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
c302113179a1c2b1254224ea9b6f5316ceeb375c |
|
05-May-2010 |
Sean Hunt <rideau3@gmail.com> |
Revert r103072; I accidentally ended up deleting a bunch of trailing whitespace which makes this patch unreadable. Will recommit without the whitespace. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103086 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
9d90d62e1661720d9cf533290b4227c4fde780a4 |
|
05-May-2010 |
Sean Hunt <rideau3@gmail.com> |
Change StmtNodes.def to StmtNodes.td in anticipation of a rewrite of attributes git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103072 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
8f5e3dd32e443768d9dbbad7191e123e6733750c |
|
24-Apr-2010 |
Douglas Gregor <dgregor@apple.com> |
Improve the AST representation of Objective-C @try/@catch/@finally statements. Instead of the @try having a single @catch, where all of the @catch's were chained (using an O(n^2) algorithm nonetheless), @try just holds an array of its @catch blocks. The resulting AST is slightly more compact (not important) and better represents the actual language semantics (good). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102221 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
9bffb0701d02a10e77e1ac0f196074eed6466ed0 |
|
23-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
david conrad points out that {|} in inline assembly on arm are not asm variants. This fixes neon inline asm which my patch for PR6780 broke. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102181 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
018b54e5c3d31dc03e2a874d58ae258651087296 |
|
05-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
fix PR6780, properly handling the IR {|} escapes in inline asm strings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100449 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
db2eb5abf4c082d1f0c5c45e39d8cd0300f81e38 |
|
31-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Remove the AST statistics tracking I added yesterday; it didn't pan out. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100027 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
f540305c5d834ad9412b41805b81a74249b7c5af |
|
30-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce new AST statistics that keep track of the number of isa (or dyn_cast) invocations for C++ and Objective-C types, declarations, expressions, and statements. The statistics will be printed when -print-stats is provided to Clang -cc1, with results such as: 277073 clang - Number of checks for C++ declaration nodes 13311 clang - Number of checks for C++ expression nodes 18 clang - Number of checks for C++ statement nodes 174182 clang - Number of checks for C++ type nodes 92300 clang - Number of checks for Objective-C declaration nodes 9800 clang - Number of checks for Objective-C expression nodes 7 clang - Number of checks for Objective-C statement nodes 65733 clang - Number of checks for Objective-C type nodes The statistics are only gathered when NDEBUG is not defined, since they introduce potentially-expensive operations into very low-level routines (isa). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99912 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
a1a396df16c02b22983b5c9592022fd9237d4866 |
|
03-Feb-2010 |
Sam Weinig <sam.weinig@gmail.com> |
Implement Doug's suggestion. Eliminate the Stmts pointer from CXXTryStmt and instead allocate the statements after the object. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95199 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
b0e4cb6a88a4b4bd2ecdcc622e852fa3e20290c9 |
|
03-Feb-2010 |
Sam Weinig <sam.weinig@gmail.com> |
Remove the SmallVector from CXXTryStmt. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95190 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
09cc141c89a5e9f305c17d7a88298647df16cedd |
|
03-Feb-2010 |
John McCall <rjmccall@apple.com> |
Remove abstract expression kinds from the StmtClass enum. Update a few users appropriately. Call out a few missing cases in the expression mangler. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95176 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
a05315436746963c4034555ca725956507e14553 |
|
31-Jan-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Try to unbreak MSVC build. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94951 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
966146e89141804ff6492739a2a6e6592ca671c7 |
|
31-Jan-2010 |
Anders Carlsson <andersca@mac.com> |
Remove the SmallVectors from AsmStmt. Fixes PR6105. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94926 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
ff93dbd887e40588ed55d135037bb9287488b285 |
|
30-Jan-2010 |
Anders Carlsson <andersca@mac.com> |
Use IdentifierInfo * instead of std::string for the AsmStmt names. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94925 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
95c9ce952dd90f0ef66660c905fe99c51b7e835d |
|
30-Jan-2010 |
Anders Carlsson <andersca@mac.com> |
Fix thinko. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94922 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
acb6bcb442936f3c14126fdd473307c17647cb84 |
|
30-Jan-2010 |
Anders Carlsson <andersca@mac.com> |
Even more AsmStmt cleanup. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94921 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
fdba9c069023f686e2608affde02c82131ee1cf8 |
|
30-Jan-2010 |
Anders Carlsson <andersca@mac.com> |
Combine AsmStmt::setOutputsAndInputs and AsmStmt::setClobbers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94918 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
703e39486689d6660e75f6b6de0068db031a51c7 |
|
24-Jan-2010 |
Anders Carlsson <andersca@mac.com> |
Implement instantiation of AsmStmts (Crazy, I know) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94361 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
3b11fd3b52e7b88233c602407c151d07cb093e75 |
|
04-Jan-2010 |
Mike Stump <mrs@apple.com> |
Remember if the AsmStmt came from Microsoft-style inline assembly code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92526 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
6281213d87e71b76f64c4ca62fbe7a97f18ae0a0 |
|
24-Dec-2009 |
Ted Kremenek <kremenek@apple.com> |
Fix bug I just introduced in ForStmt::child_end() where we could iterate off into garbage values. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92115 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
f0d975f25b1d71612fcbd58ce8abbbc4532c6bb5 |
|
24-Dec-2009 |
Ted Kremenek <kremenek@apple.com> |
Coelesce 'DoDestroy()' methods in Stmt.cpp, and modify the child_iterator returned by ForStmt to include the initializer of the condition variable. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92112 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
7d02b8c3be58676a03046eef9d056063e55ada3e |
|
24-Dec-2009 |
Ted Kremenek <kremenek@apple.com> |
Modify WhileStmt::child_begin()/child_end() to include the initializer for the condition variable. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92104 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
a3be0eaa5c253bbf1e4eb61b0a3a9c869b94aee9 |
|
24-Dec-2009 |
Ted Kremenek <kremenek@apple.com> |
Modify SwitchStmt::child_begin()/child_end() to include the initializer for the condition variable. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92100 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
35628d1f17c817f8c240208db7ba490e3109981b |
|
24-Dec-2009 |
Ted Kremenek <kremenek@apple.com> |
Add StmtIterator support for iterating over both the condition variable initializer and the other expressions in an IfStmt. This change required adding a 'DoDestroy()' method for IfStmt that did not include destroying the initializer (since that is owned by the VarDecl). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92089 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
e7809d49413febf078d0503753987fe9f6061a68 |
|
23-Dec-2009 |
Ted Kremenek <kremenek@apple.com> |
Add 'DeclStmt::DoDestroy()' which doesn't actually recurse over its child expressions (via StmtIterator), as those expressions are owned by the Decls and Types (which are destroyed elsewhere). This fixes a crasher reported in <rdar://problem/7487294>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91990 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
6515afe50c8d69dbb029b85f879cb2e083854b6c |
|
30-Nov-2009 |
Mike Stump <mrs@apple.com> |
Add const to accessors that don't modify the object. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90153 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
2024f4d4b0d57616f79ea742fa782d633d414462 |
|
29-Nov-2009 |
Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> |
Streamline Stmt::CollectingStats() and Decl::CollectingStats(). No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90078 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
e013d685c6689ac7ae103ee88acf573422d1ed6a |
|
18-Oct-2009 |
Daniel Dunbar <daniel@zuster.org> |
Move clients to use IdentifierInfo::getNameStart() instead of getName() git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84436 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
1eb4433ac451dc16f4133a88af2d002ac26c58ef |
|
09-Sep-2009 |
Mike Stump <mrs@apple.com> |
Remove tabs, and whitespace cleanups. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81346 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
f42e4a6e089e8413247400fe58ad299193371f9c |
|
24-Aug-2009 |
Torok Edwin <edwintorok@gmail.com> |
Fix build of clang with gcc-4.4: #include <cstdio> was missing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79916 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
d497206844a894a0557e927adf29b34fe960dffd |
|
08-Aug-2009 |
Anders Carlsson <andersca@mac.com> |
Get rid of Stmt::Clone now that we can reference count statements instead. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78452 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
43d9d9243329b1b75d1a6efdad9f16d6fb386b8e |
|
08-Aug-2009 |
Douglas Gregor <dgregor@apple.com> |
Introduce reference counting for statements and expressions, using it to allow sharing of nodes. Simplifies some aspects of template instantiation, and fixes both PR3444 and <rdar://problem/6757457>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78450 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
42602bb40aefcc2751d4078ba88aacf4d965c9bd |
|
07-Aug-2009 |
Douglas Gregor <dgregor@apple.com> |
Separate Stmt::Destroy into the entrypoint for destroying a statement or expression (Destroy) from the virtual function used to actually destroy a given expression (DoDestroy). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78375 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
dbe833da54e1b6192991b64fc453cd50b5ee7909 |
|
26-May-2009 |
Douglas Gregor <dgregor@apple.com> |
Simplify printing of the statistics for types. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72415 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
d308e6201afd3a8a198c52ba034d35ed19d4bafe |
|
18-May-2009 |
Douglas Gregor <dgregor@apple.com> |
Template instantiation for C++ try/catch statements. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72035 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
861ce3178c70cfb0fa50baf685e1ad363538eaa9 |
|
16-May-2009 |
Douglas Gregor <dgregor@apple.com> |
Template instantiation for break and continue statements. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71903 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
d19cd90b266181c4a8d186adfa20ccebe73336cc |
|
15-May-2009 |
Anders Carlsson <andersca@mac.com> |
Add NullStmt::Clone and use it git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71823 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
16f0049415ec596504891259e2a83e19871c0d52 |
|
26-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
split ObjC and C++ Statements out into their own headers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70105 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
cd7d5a9dc558178ed7a66032f888781b3c592e4f |
|
17-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
PCH support for inline assembly statements. This completes support for all of C (+ extensions). We can (again) build a PCH file for Carbon.h. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69385 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
025452fa0eda63e150cfaeebe64f0a19c96b3a06 |
|
17-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
PCH support for the first batch of statements, including null, compound, case, default, if, switch, and break statements. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69329 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
ec91dab1977154f13621cfb63184364afee84ea1 |
|
03-Apr-2009 |
Anders Carlsson <andersca@mac.com> |
Ignore plus operands when looking up the operand number from a named operand. This matches llvm-gcc and fixes PR3908. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68371 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
32a47ed1f58c88dbc99fbe6ed76e07cafed6479a |
|
12-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
add some spaces :) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66738 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
cafc222b2a411d4c1680a9be66ae922deb7799d2 |
|
11-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
don't use strtoul on a non-null-terminated string. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66732 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
85759278332404e96d4bb89d0e976e46158cd026 |
|
11-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
fix PR3258 by rejecting invalid numeric operands. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66618 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
eab8cfbf4b2e85b66cea6e0fea3b7f8fd2685722 |
|
11-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
checking for symbolic operands as well as % at end of string. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66614 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
2ff0f42a962fec5a6300b5986297b417db173e6a |
|
11-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
position the caret properly on asm string diagnostics, e.g.: Sema/asm.c:64:9: error: invalid % escape in inline assembly string asm("%!" : ); // expected-error {{invalid % escape in inline assembly string}} ~~^~ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66606 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
3182db1c8e456c4cd2180fac9d77d331b2c0621f |
|
11-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
reject invalid escape characters in extended-asm strings with a nice diagnostic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66605 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
fb5058ef67c054296c88db18ab1b3717845cb71d |
|
11-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
add plumbing to report diagnostics back through sema for malformed asmstrings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66598 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
458cd9c8a79b25b87dcea43c9d97a4c59f194799 |
|
11-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
move the asm string analysis code out of codegen into common code where Sema can get to it. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66596 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
10ca96ae9aed6906c3302403ef1a146a8d4c6b74 |
|
10-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
move matching of named operands into AsmStmt class. At the same time handle + operands in operand counting, fixing asm.c:t7 to expand into $2 instead of $1. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66531 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
b327793860737d1c103a73aeda8057dd628a101d |
|
10-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
add some helper methods to AsmStmt and add some comments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66521 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
24e1e707b4c362f18e371e2bbf054a8345b57bfa |
|
04-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
Change Parser::ParseCaseStatement to use an iterative approach to parsing multiple sequential case statements instead of doing it with recursion. This fixes a problem where we run out of stack space parsing 100K directly nested cases. There are a couple other problems that prevent this from being useful in practice (right now the example only parses correctly with -disable-free and doesn't work with -emit-llvm), but this is a start. I'm not including a testcase because it is large and uninteresting for regtesting. Sebastian, I would appreciate it if you could scrutinize the smart pointer gymnastics I do. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66011 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
7ba138abd329e591a8f6d5001f60dd7082f71b3b |
|
03-Mar-2009 |
Steve Naroff <snaroff@apple.com> |
Fix <rdar://problem/6640991> Exception handling executes wrong clause (Daniel, please verify). Also necessary to fix: <rdar://problem/6632061> [sema] non object types should not be allowed in @catch statements <rdar://problem/6252237> [sema] qualified id should be disallowed in @catch statements git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65964 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
93b2bdb866d49e3dab4623a822db281042e87382 |
|
01-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
ObjCAtCatchStmt's ParamStmt is always a DeclStmt. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65759 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
9653db7bd0e3665b955a0445859285f2e1e7dacd |
|
13-Feb-2009 |
Douglas Gregor <dgregor@apple.com> |
Remove DeclGroupOwningRef, since we intend for declarations to be owned by DeclContexts (always) rather than by statements. DeclContext currently goes out of its way to avoid destroying any Decls that might be owned by a DeclGroupOwningRef. However, in an error-recovery situation, a failure in a declaration statement can cause all of the decls in a DeclGroupOwningRef to be destroyed after they've already be added into the DeclContext. Hence, DeclContext is left with already-destroyed declarations, and bad things happen. This problem was causing failures that showed up as assertions on x86 Linux in test/Parser/objc-forcollection-neg-2.m. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64474 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
8189cde56b4f6f938cd65f53c932fe1860d0204c |
|
07-Feb-2009 |
Ted Kremenek <kremenek@apple.com> |
Overhaul of Stmt allocation: - Made allocation of Stmt objects using vanilla new/delete a *compiler error* by making this new/delete "protected" within class Stmt. - Now the only way to allocate Stmt objects is by using the new operator that takes ASTContext& as an argument. This ensures that all Stmt nodes are allocated from the same (pool) allocator. - Naturally, these two changes required that *all* creation sites for AST nodes use new (ASTContext&). This is a large patch, but the majority of the changes are just this mechanical adjustment. - The above changes also mean that AST nodes can no longer be deallocated using 'delete'. Instead, one most do StmtObject->Destroy(ASTContext&) or do ASTContextObject.Deallocate(StmtObject) (the latter not running the 'Destroy' method). Along the way I also... - Made CompoundStmt allocate its array of Stmt* using the allocator in ASTContext (previously it used std::vector). There are a whole bunch of other Stmt classes that need to be similarly changed to ensure that all memory allocated for ASTs comes from the allocator in ASTContext. - Added a new smart pointer ExprOwningPtr to Sema.h. This replaces the uses of llvm::OwningPtr within Sema, as llvm::OwningPtr used 'delete' to free memory instead of a Stmt's 'Destroy' method. Big thanks to Doug Gregor for helping with the acrobatics of making 'new/delete' private and the new smart pointer ExprOwningPtr! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63997 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
11e5a7f626ddbc67b6e936ed5184fcdfc7ff274b |
|
06-Feb-2009 |
Ted Kremenek <kremenek@apple.com> |
Use ASTContext's allocator to deallocate Stmt objects instead of using 'delete'. This fixes <rdar://problem/6561143>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63905 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
860f6d4af5f37a151d5e5ea3538dc4708cab5d68 |
|
16-Jan-2009 |
Douglas Gregor <dgregor@apple.com> |
Don't advance the statement iterator after we've deallocated the statement git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62306 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
8351da06ca3082dfd49dd8e3c1785a986920f57c |
|
22-Dec-2008 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Full AST support and better Sema support for C++ try-catch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61346 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
4b07b2968f87f3cd5a3d8c76145f1cbfd718d42d |
|
22-Dec-2008 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Partial AST and Sema support for C++ try-catch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61337 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
f2cad8633e46cce12fc3d77c0bd451ffd7264baf |
|
14-Nov-2008 |
Douglas Gregor <dgregor@apple.com> |
Don't require us to manually number the statements and expressions in StmtNodes.def. We don't need stable numbers yet, renumbering is a pain, and LAST_STMT had the wrong value anyway. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59300 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
ce2fc3a343ea6098a96d587071cee7299f11957a |
|
27-Oct-2008 |
Ted Kremenek <kremenek@apple.com> |
- Move ExprIterator to Stmt.h so that it can be used by classes defined in Stmt.h - Implement child_begin() and child_end() for AsmStmt. Previously these had stub implementations that did not iterate over the input/output operands of an inline assembly statement. - Use ExprIterator for performing iteration over input/output operands. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58261 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
8ffb159441e923322bef6b5dee1aaf24c738d75e |
|
08-Oct-2008 |
Ted Kremenek <kremenek@apple.com> |
Migrate DeclStmt over to using a DeclGroup instead of a pointer to a ScopedDecl*. This also removes the ugly hack needed in CFG.cpp for subclassing DeclStmt to create a DeclStmt with one Decl*. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57275 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
65aa3b9fda7b2114f708014e3d42176abc0e39ab |
|
06-Oct-2008 |
Ted Kremenek <kremenek@apple.com> |
Add DeclStmt::hasSolitaryDecl() and DeclStmt::getSolitaryDecl() git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57204 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
acc5f3e42334525bf28c86471551f83dfce222d5 |
|
11-Aug-2008 |
Daniel Dunbar <daniel@zuster.org> |
More #include cleaning - Kill unnecessary #includes in .cpp files. This is an automatic sweep so some things removed are actually used, but happen to be included by a previous header. I tried to get rid of the obvious examples and this was the easiest way to trim the #includes in one fell swoop. - We now return to regularly scheduled development. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54632 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
608b17f792691c9e3dcdd2dfbe95b593aece0b40 |
|
06-Aug-2008 |
Nico Weber <nicolasweber@gmx.de> |
remove spaces at eol to test commit access git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54381 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
14f8b4ff660bcaa763974b8d0fae81857c594495 |
|
05-Aug-2008 |
Ted Kremenek <kremenek@apple.com> |
Added decl_iterator to DeclStmt to provide an abstract interface to iterate over the ScopedDecls of a DeclStmt. Updated a few clients of DeclStmt::getNextDeclarator() to use decl_iterator instead. Will update other clients after additional testing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54368 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
1060aff23f72135f8b50034a1e80f16725ebc56c |
|
17-Jun-2008 |
Ted Kremenek <kremenek@apple.com> |
Fix more strict-aliasing warnings. Fix indentation of class declarations in ExprCXX.h git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52380 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
f494b579b22f9950f5af021f0bf9879a91bb8b41 |
|
29-May-2008 |
Steve Naroff <snaroff@apple.com> |
- Move ObjC Expresssion AST's from Expr.h => ExprObjC.h - #include ExprObjC.h in many places git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51703 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
0613c37d7914672585e67bedd18d9a1588104360 |
|
25-May-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Always initialize NEXT_CATCH; fixes a Valgrind uninitialized read error (originally reported in PR1682). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51551 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
936ff132a9aba1f1bb5d72a5744da1e10ce269d2 |
|
21-May-2008 |
Ted Kremenek <kremenek@apple.com> |
Fix potential double-free. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51381 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
8e355f296a3ba45b94de49dbb18ae6a6e67df04c |
|
21-May-2008 |
Ted Kremenek <kremenek@apple.com> |
When destroying DeclStmts, also destroy the associated Decl (reclaim its memory). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51379 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
f809e3bd0c3d063f22ba34981072dae306ca9272 |
|
20-May-2008 |
Ted Kremenek <kremenek@apple.com> |
Delete AST nodes, not just Decls. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51298 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
27f8a28bee33bb0e857cfe1a61c281bbc234b338 |
|
20-May-2008 |
Ted Kremenek <kremenek@apple.com> |
Try to plug some memory leaks... 1) Sema::ParseAST now constructs a TranslationUnit object to own the top-level Decls, which releases the top-level Decls upon exiting ParseAST. 2) Bug fix: TranslationUnit::~TranslationUnit handles the case where a Decl is added more than once as a top-level Decl. 3) Decl::Destroy is now a virtual method, obviating the need for a special dispatch based on DeclKind. 3) FunctionDecl::Destroy now releases its Body using its Destroy method. 4) Added Stmt::Destroy and Stmt::DestroyChildren, which recursively delete the child ASTs of a Stmt and call their dstors. We may need to special case dstor/Destroy methods for particular Stmt subclasses that own other dynamically allocated objects besides AST nodes. 5) REGRESSION: We temporarily are not deallocating attributes; a FIXME is provided. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51286 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
9c1863ef36a74e8203f00289d19856ad956f48b9 |
|
20-May-2008 |
Ted Kremenek <kremenek@apple.com> |
Added Stmt::DestroyChildren, which will be used by the dstors of the subclasses of Stmt to recursively delete their child AST nodes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51278 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|
bda0b626e74513950405c27525af87e214e605e2 |
|
16-Mar-2008 |
Chris Lattner <sabre@nondot.org> |
Make a major restructuring of the clang tree: introduce a top-level lib dir and move all the libraries into it. This follows the main llvm tree, and allows the libraries to be built in parallel. The top level now enforces that all the libs are built before Driver, but we don't care what order the libs are built in. This speeds up parallel builds, particularly incremental ones. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48402 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/AST/Stmt.cpp
|