[PATCH] D58074: [OpenMP 5.0] Parsing/sema support for map clause with mapper modifier
Lingda Li via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon Feb 11 14:12:38 PST 2019
lildmh created this revision.
lildmh added reviewers: ABataev, hfinkel, Meinersbur.
lildmh added a project: OpenMP.
Herald added subscribers: cfe-commits, guansong.
Herald added a project: clang.
This patch implements the parsing and sema support for OpenMP map clauses with potential user-defined mapper attached. User defined mapper is a new feature in OpenMP 5.0. A map clause can have an explicit or implicit associated mapper, which instructs the compiler to generate extra data mapping. An example is shown below:
struct S { int len; int *d; };
#pragma omp declare mapper(id: struct S s) map(s, s.d[0:s.len])
struct S ss;
#pragma omp target map(mapper(id) tofrom: ss) // use the mapper with name 'id' to map ss
Repository:
rC Clang
https://reviews.llvm.org/D58074
Files:
include/clang/AST/OpenMPClause.h
include/clang/Basic/DiagnosticParseKinds.td
include/clang/Basic/DiagnosticSemaKinds.td
include/clang/Basic/OpenMPKinds.def
include/clang/Parse/Parser.h
include/clang/Sema/Sema.h
lib/AST/OpenMPClause.cpp
lib/Parse/ParseOpenMP.cpp
lib/Sema/SemaLookup.cpp
lib/Sema/SemaOpenMP.cpp
lib/Sema/SemaTemplateInstantiateDecl.cpp
lib/Sema/TreeTransform.h
lib/Serialization/ASTReader.cpp
lib/Serialization/ASTWriter.cpp
test/OpenMP/declare_mapper_ast_print.c
test/OpenMP/declare_mapper_ast_print.cpp
test/OpenMP/declare_mapper_messages.c
test/OpenMP/declare_mapper_messages.cpp
test/OpenMP/target_map_messages.cpp
test/OpenMP/target_parallel_for_map_messages.cpp
test/OpenMP/target_parallel_for_simd_map_messages.cpp
test/OpenMP/target_parallel_map_messages.cpp
test/OpenMP/target_simd_map_messages.cpp
test/OpenMP/target_teams_distribute_map_messages.cpp
test/OpenMP/target_teams_distribute_parallel_for_map_messages.cpp
test/OpenMP/target_teams_distribute_parallel_for_simd_map_messages.cpp
test/OpenMP/target_teams_distribute_simd_map_messages.cpp
test/OpenMP/target_teams_map_messages.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D58074.186326.patch
Type: text/x-patch
Size: 76683 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20190211/a6f38851/attachment-0001.bin>
More information about the cfe-commits
mailing list