[Openmp-commits] [openmp] r307899 - [GOMP] Fix (un)tied tasks with the GCC

Jonas Hahnfeld via Openmp-commits openmp-commits at lists.llvm.org
Thu Jul 13 03:38:11 PDT 2017


Author: hahnfeld
Date: Thu Jul 13 03:38:11 2017
New Revision: 307899

URL: http://llvm.org/viewvc/llvm-project?rev=307899&view=rev
Log:
[GOMP] Fix (un)tied tasks with the GCC

The first bit is actually the "untied" flag. That is why the condition was
wrong and has to be inverted to set the flag correctly.

Found and initial patch by Simon Convent!

Modified:
    openmp/trunk/runtime/src/kmp_gsupport.cpp

Modified: openmp/trunk/runtime/src/kmp_gsupport.cpp
URL: http://llvm.org/viewvc/llvm-project/openmp/trunk/runtime/src/kmp_gsupport.cpp?rev=307899&r1=307898&r2=307899&view=diff
==============================================================================
--- openmp/trunk/runtime/src/kmp_gsupport.cpp (original)
+++ openmp/trunk/runtime/src/kmp_gsupport.cpp Thu Jul 13 03:38:11 2017
@@ -847,8 +847,8 @@ void xexpand(KMP_API_NAME_GOMP_TASK)(voi
 
   KA_TRACE(20, ("GOMP_task: T#%d\n", gtid));
 
-  // The low-order bit is the "tied" flag
-  if (gomp_flags & 1) {
+  // The low-order bit is the "untied" flag
+  if (!(gomp_flags & 1)) {
     input_flags->tiedness = 1;
   }
   // The second low-order bit is the "final" flag




More information about the Openmp-commits mailing list