r310817 - Fix memory leak in ToolChain::TranslateOpenMPTargetArgs

Jonas Hahnfeld via cfe-commits cfe-commits at lists.llvm.org
Mon Aug 14 00:44:06 PDT 2017


Author: hahnfeld
Date: Mon Aug 14 00:44:05 2017
New Revision: 310817

URL: http://llvm.org/viewvc/llvm-project?rev=310817&view=rev
Log:
Fix memory leak in ToolChain::TranslateOpenMPTargetArgs

rL310433 introduced a code path where DAL is not returned and must be freed.
This change allows to run openmp-offload.c when Clang is built with ASan.

Modified:
    cfe/trunk/lib/Driver/ToolChain.cpp
    cfe/trunk/test/Driver/openmp-offload.c

Modified: cfe/trunk/lib/Driver/ToolChain.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/ToolChain.cpp?rev=310817&r1=310816&r2=310817&view=diff
==============================================================================
--- cfe/trunk/lib/Driver/ToolChain.cpp (original)
+++ cfe/trunk/lib/Driver/ToolChain.cpp Mon Aug 14 00:44:05 2017
@@ -859,7 +859,11 @@ ToolChain::TranslateOpenMPTargetArgs(con
       NewArgAdded = true;
     }
 
-    return NewArgAdded ? DAL : nullptr;
+    if (NewArgAdded) {
+      return DAL;
+    } else {
+      delete DAL;
+    }
   }
 
   return nullptr;

Modified: cfe/trunk/test/Driver/openmp-offload.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/openmp-offload.c?rev=310817&r1=310816&r2=310817&view=diff
==============================================================================
--- cfe/trunk/test/Driver/openmp-offload.c (original)
+++ cfe/trunk/test/Driver/openmp-offload.c Mon Aug 14 00:44:05 2017
@@ -2,9 +2,6 @@
 /// Perform several driver tests for OpenMP offloading
 ///
 
-// Until this test is stabilized on all local configurations.
-// UNSUPPORTED: linux
-
 // REQUIRES: clang-driver
 // REQUIRES: x86-registered-target
 // REQUIRES: powerpc-registered-target




More information about the cfe-commits mailing list