summaryrefslogtreecommitdiffstats
path: root/openmp/runtime/src/kmp_threadprivate.cpp
diff options
context:
space:
mode:
authorJonas Hahnfeld <hahnjo@hahnjo.de>2017-11-03 18:28:19 +0000
committerJonas Hahnfeld <hahnjo@hahnjo.de>2017-11-03 18:28:19 +0000
commitf0a1c65fb007d727ff93bd8ff9c438f689cde77d (patch)
tree15f4808dd4e47ef7dd31bf66465d9c9b976a830d /openmp/runtime/src/kmp_threadprivate.cpp
parent8fe9fb0ae57b7da25bceb154f4a798d347def42f (diff)
downloadbcm5719-llvm-f0a1c65fb007d727ff93bd8ff9c438f689cde77d.tar.gz
bcm5719-llvm-f0a1c65fb007d727ff93bd8ff9c438f689cde77d.zip
Revert "Updating implementation of OMPT as specified in OpenMP 5.0 Preview 2 (TR6)"
This reverts commit r317339 which discarded some recent commits. llvm-svn: 317346
Diffstat (limited to 'openmp/runtime/src/kmp_threadprivate.cpp')
-rw-r--r--openmp/runtime/src/kmp_threadprivate.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/openmp/runtime/src/kmp_threadprivate.cpp b/openmp/runtime/src/kmp_threadprivate.cpp
index bbcfadd7961..362c0757f98 100644
--- a/openmp/runtime/src/kmp_threadprivate.cpp
+++ b/openmp/runtime/src/kmp_threadprivate.cpp
@@ -226,6 +226,13 @@ void __kmp_common_destroy_gtid(int gtid) {
struct private_common *tn;
struct shared_common *d_tn;
+ if (!TCR_4(__kmp_init_gtid)) {
+ // This is possible when one of multiple roots initiates early library
+ // termination in a sequential region while other teams are active, and its
+ // child threads are about to end.
+ return;
+ }
+
KC_TRACE(10, ("__kmp_common_destroy_gtid: T#%d called\n", gtid));
if ((__kmp_foreign_tp) ? (!KMP_INITIAL_GTID(gtid)) : (!KMP_UBER_GTID(gtid))) {
OpenPOWER on IntegriCloud