diff options
| author | Jonathan Peyton <jonathan.l.peyton@intel.com> | 2015-10-19 19:43:01 +0000 |
|---|---|---|
| committer | Jonathan Peyton <jonathan.l.peyton@intel.com> | 2015-10-19 19:43:01 +0000 |
| commit | 6778c73243e50a0b02c459bff25be40d8474d75d (patch) | |
| tree | f0a6b28221042bc05439e8eb0e3137cac1ed5051 /openmp/runtime | |
| parent | 75656eebb877f643c38bc6898fd82e28c3302530 (diff) | |
| download | bcm5719-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.cpp | 2 |
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; |

