summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGOpenMPRuntime.h
diff options
context:
space:
mode:
authorSamuel Antao <sfantao@us.ibm.com>2016-04-27 22:58:19 +0000
committerSamuel Antao <sfantao@us.ibm.com>2016-04-27 22:58:19 +0000
commitdf158d55678182a57485ba8005b3e444aaeff5ca (patch)
tree7c5fed557c71cec302c897b2aab5298dfb9ab1f9 /clang/lib/CodeGen/CGOpenMPRuntime.h
parentf88174dd807a377380528ed0f58110f3b96a9513 (diff)
downloadbcm5719-llvm-df158d55678182a57485ba8005b3e444aaeff5ca.tar.gz
bcm5719-llvm-df158d55678182a57485ba8005b3e444aaeff5ca.zip
[OpenMP] Code generation for target data directive
Summary: This patch adds support for the target data directive code generation. Part of the already existent functionality related with data maps is moved to a new function so that it could be reused. Reviewers: hfinkel, carlo.bertolli, arpith-jacob, kkwli0, ABataev Subscribers: cfe-commits, fraggamuffin, caomhin Differential Revision: http://reviews.llvm.org/D17367 llvm-svn: 267811
Diffstat (limited to 'clang/lib/CodeGen/CGOpenMPRuntime.h')
-rw-r--r--clang/lib/CodeGen/CGOpenMPRuntime.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CGOpenMPRuntime.h b/clang/lib/CodeGen/CGOpenMPRuntime.h
index 4abdd23b7e1..c1589e8ff44 100644
--- a/clang/lib/CodeGen/CGOpenMPRuntime.h
+++ b/clang/lib/CodeGen/CGOpenMPRuntime.h
@@ -1039,6 +1039,18 @@ public:
/// \param ThreadLimit An integer expression of threads.
virtual void emitNumTeamsClause(CodeGenFunction &CGF, const Expr *NumTeams,
const Expr *ThreadLimit, SourceLocation Loc);
+
+ /// \brief Emit the target data mapping code associated with \a D.
+ /// \param D Directive to emit.
+ /// \param IfCond Expression evaluated in if clause associated with the target
+ /// directive, or null if no if clause is used.
+ /// \param Device Expression evaluated in device clause associated with the
+ /// target directive, or null if no device clause is used.
+ /// \param CodeGen, Function that emits the enclosed region.
+ virtual void emitTargetDataCalls(CodeGenFunction &CGF,
+ const OMPExecutableDirective &D,
+ const Expr *IfCond, const Expr *Device,
+ const RegionCodeGenTy &CodeGen);
};
} // namespace CodeGen
OpenPOWER on IntegriCloud