summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGOpenMPRuntime.h
diff options
context:
space:
mode:
authorAlexey Bataev <a.bataev@hotmail.com>2017-10-11 15:29:40 +0000
committerAlexey Bataev <a.bataev@hotmail.com>2017-10-11 15:29:40 +0000
commite213f3e61a433787ee91ecce20eaf6b6c8492644 (patch)
tree2335d8bade67812150922408b99ea4331eedba8b /clang/lib/CodeGen/CGOpenMPRuntime.h
parenteb1701fe76350f97e6484e8ff10926f40f87faa6 (diff)
downloadbcm5719-llvm-e213f3e61a433787ee91ecce20eaf6b6c8492644.tar.gz
bcm5719-llvm-e213f3e61a433787ee91ecce20eaf6b6c8492644.zip
[OPENMP] Fix PR34916: Crash on mixing taskloop|tasks directives.
If both taskloop and task directives are used at the same time in one program, we may ran into the situation when the particular type for task directive is reused for taskloop directives. Patch fixes this problem. llvm-svn: 315464
Diffstat (limited to 'clang/lib/CodeGen/CGOpenMPRuntime.h')
-rw-r--r--clang/lib/CodeGen/CGOpenMPRuntime.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CGOpenMPRuntime.h b/clang/lib/CodeGen/CGOpenMPRuntime.h
index 4a93e797545..94a14384137 100644
--- a/clang/lib/CodeGen/CGOpenMPRuntime.h
+++ b/clang/lib/CodeGen/CGOpenMPRuntime.h
@@ -318,6 +318,10 @@ private:
/// deconstructors of firstprivate C++ objects */
/// } kmp_task_t;
QualType KmpTaskTQTy;
+ /// Saved kmp_task_t for task directive.
+ QualType SavedKmpTaskTQTy;
+ /// Saved kmp_task_t for taskloop-based directive.
+ QualType SavedKmpTaskloopTQTy;
/// \brief Type typedef struct kmp_depend_info {
/// kmp_intptr_t base_addr;
/// size_t len;
OpenPOWER on IntegriCloud