llvm-project/clang/lib/AST
Carlo Bertolli 8429d81202 [OpenMP] Prepare Sema for initial implementation for pragma 'distribute parallel for'
https://reviews.llvm.org/D29922

This patch adds two fields for use in the implementation of 'distribute parallel for':

The increment expression for the distribute loop. As the chunk assigned to a team is executed by multiple threads within the 'parallel for' region, the increment expression has to correspond to the value returned by the related runtime call (for_static_init).
The upper bound of the innermost loop ('for' in 'distribute parallel for') is not the globalUB expression normally used for pragma 'for' when found in isolation. It is instead the upper bound of the chunk assigned to the team ('distribute' loop). In this way, we prevent teams from executing chunks assigned to other teams.
The use of these two fields can be see in a related explanatory patch:
https://reviews.llvm.org/D29508

llvm-svn: 295497
2017-02-17 21:29:13 +00:00
..
APValue.cpp Re-commit r289252 and r289285, and fix PR31374 2016-12-15 08:09:08 +00:00
ASTConsumer.cpp Move LocInfoType from Sema to AST. 2016-02-01 17:42:01 +00:00
ASTContext.cpp [OpenCL] Correct ndrange_t implementation 2017-02-16 12:27:47 +00:00
ASTDiagnostic.cpp PR30831: Teach template type diffing to cope with TemplateSpecializationTypes 2016-10-28 19:54:43 +00:00
ASTDumper.cpp Add two new AST nodes to represent initialization of an array in terms of 2016-12-12 02:53:20 +00:00
ASTImporter.cpp P0091R3: Implement basic parsing support for C++17 deduction-guides. 2017-02-07 01:37:30 +00:00
ASTTypeTraits.cpp Teach clang-query to dump types. I couldn't find any existing tests for clang-query's dumping functionality. =( 2016-11-02 23:57:18 +00:00
AttrImpl.cpp [NFC] Header cleanup 2016-07-18 19:02:11 +00:00
CMakeLists.txt Revert r295421, new ODR checker for modules, to fix build bot. 2017-02-17 07:19:24 +00:00
CXXABI.h Remove C++ default arg side table for MS ABI ctor closures 2016-11-23 16:51:30 +00:00
CXXInheritance.cpp Remove unused lambda captures. NFC 2017-01-13 18:55:32 +00:00
Comment.cpp [Sema][Comments] Add support for TypeAliasTemplate 2016-08-25 17:09:33 +00:00
CommentBriefParser.cpp [NFC] Header cleanup 2016-07-18 19:02:11 +00:00
CommentCommandTraits.cpp Fix for PR21254 - Assertion in comment parser 2014-10-15 16:18:20 +00:00
CommentLexer.cpp Fix 'unknown documentation command' warning ranges 2016-10-25 10:06:11 +00:00
CommentParser.cpp [cleanup] Remove excessive padding from TextTokenRetokenizer::Position 2016-09-20 18:32:48 +00:00
CommentSema.cpp AST: improve layout of SimpleTypoCorrector 2016-08-28 21:33:30 +00:00
Decl.cpp Use dedicated method instead of copying conditions. NFC. 2017-02-15 12:30:35 +00:00
DeclBase.cpp Add an explicit derived class of FunctionDecl to model deduction guides rather 2017-02-17 20:05:37 +00:00
DeclCXX.cpp Add an explicit derived class of FunctionDecl to model deduction guides rather 2017-02-17 20:05:37 +00:00
DeclFriend.cpp [TrailingObjects] Convert Decl* classes. 2015-12-29 22:13:13 +00:00
DeclGroup.cpp Retire llvm::alignOf in favor of C++11 alignof. 2016-10-20 14:27:22 +00:00
DeclObjC.cpp [ObjC] Prevent infinite loops when iterating over redeclaration 2016-11-21 11:16:30 +00:00
DeclOpenMP.cpp [OPENMP] Fix for PR31416: Clang crashes on OMPCapturedExpr during source 2016-12-20 16:51:02 +00:00
DeclPrinter.cpp [AST Printer] Print attributes on enum constants 2017-01-20 03:33:42 +00:00
DeclTemplate.cpp Add a destruct-on-exit function to ASTContext. 2017-02-14 05:37:36 +00:00
DeclarationName.cpp P0091R3: Improved syntactic checking of deduction-guides. 2017-02-08 00:35:25 +00:00
Expr.cpp [OpenCL] Add missing address spaces in IR generation of blocks 2017-01-27 15:11:34 +00:00
ExprCXX.cpp [c++1z] P0091R3: Basic support for deducing class template arguments via deduction-guides. 2017-02-09 19:17:44 +00:00
ExprClassification.cpp Add two new AST nodes to represent initialization of an array in terms of 2016-12-12 02:53:20 +00:00
ExprConstant.cpp Silence sign compare warning. NFC. 2017-02-16 14:08:41 +00:00
ExprObjC.cpp Retire llvm::alignOf in favor of C++11 alignof. 2016-10-20 14:27:22 +00:00
ExternalASTSource.cpp Prototype of modules codegen 2017-01-30 05:00:26 +00:00
InheritViz.cpp InheritViz: Hide implementation details 2015-03-09 15:03:20 +00:00
ItaniumCXXABI.cpp Remove C++ default arg side table for MS ABI ctor closures 2016-11-23 16:51:30 +00:00
ItaniumMangle.cpp [OpenCL] Correct ndrange_t implementation 2017-02-16 12:27:47 +00:00
Mangle.cpp regcall: Implement regcall Calling Conv in clang 2016-11-02 18:29:35 +00:00
MicrosoftCXXABI.cpp Remove C++ default arg side table for MS ABI ctor closures 2016-11-23 16:51:30 +00:00
MicrosoftMangle.cpp [OpenCL] Correct ndrange_t implementation 2017-02-16 12:27:47 +00:00
NSAPI.cpp [OpenCL] Correct ndrange_t implementation 2017-02-16 12:27:47 +00:00
NestedNameSpecifier.cpp Retire llvm::alignOf in favor of C++11 alignof. 2016-10-20 14:27:22 +00:00
OpenMPClause.cpp [OpenMP] Support for thread_limit-clause on the 'target teams' directive. 2017-01-25 11:44:35 +00:00
ParentMap.cpp [arcmt/objcmt] Fix ParentMap crash with invalid code. 2016-07-14 20:21:16 +00:00
RawCommentList.cpp AST: Improve a couple of comments and cast unused values to void 2016-10-16 20:12:42 +00:00
RecordLayout.cpp [RecordLayout] Use an ASTVector instead of using a separate pointer and counter 2016-05-24 18:10:50 +00:00
RecordLayoutBuilder.cpp [RecordLayout] Use an ASTVector instead of using a separate pointer and counter 2016-05-24 18:10:50 +00:00
SelectorLocationsKind.cpp
Stmt.cpp [x86][inline-asm] Add support for curly brackets escape using "%" in extended inline asm. 2016-10-31 15:27:54 +00:00
StmtCXX.cpp [coroutines] NFC: Refactor Sema::CoroutineBodyStmt construction. 2017-02-13 05:05:02 +00:00
StmtIterator.cpp [ptr-traits] Stop using two bogus types as stand-ins for flags 2015-12-30 02:51:00 +00:00
StmtObjC.cpp Retire llvm::alignOf in favor of C++11 alignof. 2016-10-20 14:27:22 +00:00
StmtOpenMP.cpp [OpenMP] Prepare Sema for initial implementation for pragma 'distribute parallel for' 2017-02-17 21:29:13 +00:00
StmtPrinter.cpp [OpenMP] Sema and parsing for 'target teams distribute simd’ pragma 2017-01-10 18:08:18 +00:00
StmtProfile.cpp Revert r295421, new ODR checker for modules, to fix build bot. 2017-02-17 07:19:24 +00:00
StmtViz.cpp
TemplateBase.cpp [AST] Give TemplateArgumentLoc a constexpr ctor. 2017-01-30 18:32:46 +00:00
TemplateName.cpp Annotate dump() methods with LLVM_DUMP_METHOD, addressing Richard Smith r259192 post commit comment. 2016-01-29 19:38:18 +00:00
Type.cpp [OpenCL] Correct ndrange_t implementation 2017-02-16 12:27:47 +00:00
TypeLoc.cpp [OpenCL] Correct ndrange_t implementation 2017-02-16 12:27:47 +00:00
TypePrinter.cpp PR0091R3: Implement parsing support for using templates as types. 2017-01-26 20:40:47 +00:00
VTTBuilder.cpp Update for LLVM API change to make Small(Ptr)Set::insert return pair<iterator, bool> as per the C++ standard's associative container concept. 2014-11-19 07:49:47 +00:00
VTableBuilder.cpp CodeGen: New vtable group representation: struct of vtable arrays. 2016-12-13 20:40:39 +00:00