summaryrefslogtreecommitdiffstats
path: root/openmp/runtime
diff options
context:
space:
mode:
authorJonathan Peyton <jonathan.l.peyton@intel.com>2015-10-19 19:43:01 +0000
committerJonathan Peyton <jonathan.l.peyton@intel.com>2015-10-19 19:43:01 +0000
commit6778c73243e50a0b02c459bff25be40d8474d75d (patch)
treef0a6b28221042bc05439e8eb0e3137cac1ed5051 /openmp/runtime
parent75656eebb877f643c38bc6898fd82e28c3302530 (diff)
downloadbcm5719-llvm-6778c73243e50a0b02c459bff25be40d8474d75d.tar.gz
bcm5719-llvm-6778c73243e50a0b02c459bff25be40d8474d75d.zip
Fix OMP_PLACES negation operator parsing (!place)
Just moved the *scan++ line up before the recursive call. Otherwise, infinite recursion occurs and leads to a segmentation fault. llvm-svn: 250729
Diffstat (limited to 'openmp/runtime')
-rw-r--r--openmp/runtime/src/kmp_affinity.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/openmp/runtime/src/kmp_affinity.cpp b/openmp/runtime/src/kmp_affinity.cpp
index 49ae80e09e0..e45301dda3d 100644
--- a/openmp/runtime/src/kmp_affinity.cpp
+++ b/openmp/runtime/src/kmp_affinity.cpp
@@ -2831,9 +2831,9 @@ __kmp_process_place(const char **scan, kmp_affin_mask_t *osId2Mask,
(*scan)++; // skip '}'
}
else if (**scan == '!') {
+ (*scan)++; // skip '!'
__kmp_process_place(scan, osId2Mask, maxOsId, tempMask, setSize);
KMP_CPU_COMPLEMENT(tempMask);
- (*scan)++; // skip '!'
}
else if ((**scan >= '0') && (**scan <= '9')) {
next = *scan;
OpenPOWER on IntegriCloud