summaryrefslogtreecommitdiffstats
path: root/clang/lib/AST/Stmt.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [OpenMP] Added parsing and semantic analysis for firstprivate clauseAlexey Bataev2013-10-011-0/+23
| | | | llvm-svn: 191730
* Add unused markings to suppress warnings.Eli Friedman2013-09-101-3/+7
| | | | | | | | | | 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. llvm-svn: 190443
* OpenMP: Data-sharing attributes analysis and clause 'shared' (fixed test ↵Alexey Bataev2013-09-061-0/+30
| | | | | | threadprivate_messages.cpp) llvm-svn: 190183
* Remove useless reinterpret_casts from Stmt.cppPavel Labath2013-09-031-9/+9
| | | | | | | | | | | | | | 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 llvm-svn: 189813
* Revert "OpenMP: Data-sharing attributes analysis and clause 'shared'"Rafael Espindola2013-09-031-30/+0
| | | | | | | | This reverts commit r189795. threadprivate_messages.cpp is faling on windows. llvm-svn: 189811
* OpenMP: Data-sharing attributes analysis and clause 'shared'Alexey Bataev2013-09-031-0/+30
| | | | llvm-svn: 189795
* Constify some more ASTContext& uses.Craig Topper2013-08-221-13/+14
| | | | llvm-svn: 188989
* Constify the ASTContext& passed to Stmt creation functions. Also constify ↵Craig Topper2013-08-221-43/+38
| | | | | | the context in couple other functions that are called from creation functions. llvm-svn: 188986
* Revert accidental commit.Craig Topper2013-08-211-56/+59
| | | | llvm-svn: 188862
* Replace avx-512 with avx512f to match llvm side and what gcc patches appear ↵Craig Topper2013-08-211-59/+56
| | | | | | to be using. llvm-svn: 188860
* Revert r188756 because some other changes snuck in with it.Craig Topper2013-08-201-56/+59
| | | | llvm-svn: 188757
* Add AVX-512 feature flag and knl cpu to clang.Craig Topper2013-08-201-59/+56
| | | | llvm-svn: 188756
* Make the version of Stmt::operator new that takes ASTContext* call the ↵Craig Topper2013-08-191-5/+0
| | | | | | ASTContext& version in Stmt inline instead of having two out of line functions that both call to the global versions. llvm-svn: 188648
* Revert r188644 to unbreak buildbots.Craig Topper2013-08-181-0/+5
| | | | llvm-svn: 188645
* Remove Stmt::operator new that takes a ASTContext*. All callers use the ↵Craig Topper2013-08-181-5/+0
| | | | | | ASTContext& version. llvm-svn: 188644
* Remove throw() from Stmt::operator new so the compiler will omit the null ↵Craig Topper2013-08-181-2/+2
| | | | | | check on the result since ASTContext allocator won't return null. llvm-svn: 188641
* Make expression allocation methods use a 'const' reference to the ASTContext ↵Craig Topper2013-08-181-2/+2
| | | | | | since the underlying operator new only needs a const reference. llvm-svn: 188636
* OpenMP: basic support for #pragma omp parallelAlexey Bataev2013-07-191-0/+52
| | | | llvm-svn: 186647
* Delete dead code.Eli Friedman2013-06-271-22/+0
| | | | llvm-svn: 185101
* First pass of semantic analysis for init-captures: check the initializer, buildRichard Smith2013-05-161-1/+1
| | | | | | | | | | | | | 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. llvm-svn: 181985
* Implement template support for CapturedStmtWei Pan2013-05-041-4/+6
| | | | | | | | - Sema tests added and CodeGen tests are pending Differential Revision: http://llvm-reviews.chandlerc.com/D728 llvm-svn: 181101
* Serialization for captured statementsBen Langmuir2013-05-031-2/+2
| | | | | | | | | | | 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 llvm-svn: 181048
* Move parsing of identifiers in MS-style inline assembly intoJohn McCall2013-05-031-14/+27
| | | | | | | | | | | | | | | | | | | | | 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. llvm-svn: 180976
* Sema for Captured StatementsTareq A. Siraj2013-04-161-8/+8
| | | | | | | | | | | | | 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 llvm-svn: 179618
* Implement CapturedStmt ASTTareq A. Siraj2013-04-161-0/+102
| | | | | | | | | | | | | | | 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 llvm-svn: 179615
* Excise <cctype> from Clang (except clang-tblgen) in favor of CharInfo.h.Jordan Rose2013-02-081-3/+4
| | | | | | | Nearly all of these changes are one-to-one replacements; the few that aren't have to do with custom identifier validation. llvm-svn: 174768
* ArrayRefize CXXTryStmt.Nico Weber2012-12-291-7/+6
| | | | llvm-svn: 171239
* ArrayRefize a CompoundStmt constructor.Nico Weber2012-12-291-6/+6
| | | | llvm-svn: 171238
* Fix for PR12222.Erik Verbruggen2012-12-251-62/+45
| | | | | | | | 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(). llvm-svn: 171067
* Include pruning and general cleanup.Benjamin Kramer2012-12-011-3/+4
| | | | llvm-svn: 169095
* Pull the Attr iteration parts out of Attr.h, so including DeclBase.h doesn't ↵Benjamin Kramer2012-12-011-0/+10
| | | | | | | | | 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. llvm-svn: 169092
* [ms-inline asm] Move some logic around to simplify the interface between theChad Rosier2012-10-161-17/+11
| | | | | | front-end and the AsmParser. No functional change intended. llvm-svn: 166063
* Revert r163083 per chandlerc's request.Joao Matos2012-09-041-11/+0
| | | | llvm-svn: 163149
* [ms-inline asm] Fix an illegal index and an 80-column violation.Chad Rosier2012-09-041-7/+7
| | | | llvm-svn: 163143
* Implemented parsing and AST support for the MS __leave exception statement. ↵Joao Matos2012-09-021-0/+11
| | | | | | Also a minor fix to __except printing in StmtPrinter.cpp. Thanks to Aaron Ballman for review. llvm-svn: 163083
* [ms-inline asm] Have generateAsmString() return the AsmString computed by Sema.Chad Rosier2012-08-281-1/+1
| | | | | | | | 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. llvm-svn: 162785
* [ms-inline asm] Add constraints to MSAsmStmt. We don't currently computeChad Rosier2012-08-281-17/+10
| | | | | | | the constraints, so in the interim we speculatively assume a 'r' constraint. This is expected to work for most cases on x86. llvm-svn: 162784
* [ms-inline asm] Use dyn_cast<> here to simplify logic.Chad Rosier2012-08-281-30/+24
| | | | llvm-svn: 162773
* [ms-inline asm] Make the AsmStmt class non-virtual.Chad Rosier2012-08-281-0/+54
| | | | llvm-svn: 162768
* [ms-inline asm] Hoist more common code into the AsmStmt base class. Add stubsChad Rosier2012-08-281-12/+25
| | | | | | with FIXMEs for unimplemented features. No functional change intended. llvm-svn: 162716
* [ms-inline asm] Add virtual function, getClobber, that returns a StringRef.Chad Rosier2012-08-271-0/+4
| | | | | | More work towards unifying asm stmt codegen. llvm-svn: 162712
* [ms-inline asm] Rename GenerateAsmString to generateAsmString to conform withChad Rosier2012-08-271-2/+9
| | | | | | | coding standards. Also, add stub for MSAsmStmt class as part of unifying codegen logic for AsmStmts. llvm-svn: 162696
* [ms-inline asm] Hoist common logic into the AsmStmt base class.Chad Rosier2012-08-271-7/+5
| | | | llvm-svn: 162692
* [ms-inline asm] Add a new base class, AsmStmt, for the GCCAsmStmt and MSAsmStmtChad Rosier2012-08-271-4/+4
| | | | | | classes. llvm-svn: 162691
* [ms-inline asm] As part of a larger refactoring, rename AsmStmt to GCCAsmStmt.Chad Rosier2012-08-251-17/+18
| | | | | | No functional change intended. llvm-svn: 162632
* [ms-inline asm] Refactor code. No functional change intended.Chad Rosier2012-08-241-0/+21
| | | | llvm-svn: 162568
* [ms-inline asm] Add the basic APIs for Exprs to the MSAsmStmt AST. Next we needChad Rosier2012-08-241-2/+23
| | | | | | generate the Input/Output expressions using Sema::ActOnIdExpression(). llvm-svn: 162509
* [ms-inline asm] Remove old cruft now that MS-style asms their own code path.Chad Rosier2012-08-201-4/+3
| | | | llvm-svn: 162210
* [ms-inline asm] Add inputs and outputs to AST. No functional change.Chad Rosier2012-08-161-6/+15
| | | | llvm-svn: 162000
* [ms-inline asm] Add the left brace source location and improve the prettyChad Rosier2012-08-151-2/+3
| | | | | | printer. Patch by Enea Zaffanella <zaffanella@cs.unipr.it>. llvm-svn: 161958
OpenPOWER on IntegriCloud