[Openmp-commits] [openmp] r336327 - Dropped non-supoorted "--no-as-needed" flag from OMPT tests for macOS

Joachim Protze via Openmp-commits openmp-commits at lists.llvm.org
Thu Jul 5 02:14:06 PDT 2018


Author: jprotze
Date: Thu Jul  5 02:14:06 2018
New Revision: 336327

URL: http://llvm.org/viewvc/llvm-project?rev=336327&view=rev
Log:
Dropped non-supoorted "--no-as-needed" flag from OMPT tests for macOS

The flag "--no-as-needed" is not recognized by the linker on macOS making the following tests fail:

ompt/loadtool/tool_available/tool_available.c
ompt/loadtool/tool_not_available/tool_not_available.c
This patch removes this flag for macOS and adds it only for Linux and Windows.
I tested it on Ubuntu 16.04 and macOS HighSierra, with Clang/LLVM 6.0.1 and OpenMP trunk.

This solution was also discussed in the OpenMP-dev mailing list.

Patch provided by Simone Atzeni

Differential Revision: https://reviews.llvm.org/D48888

Modified:
    openmp/trunk/runtime/test/lit.cfg
    openmp/trunk/runtime/test/ompt/loadtool/tool_available/tool_available.c
    openmp/trunk/runtime/test/ompt/loadtool/tool_not_available/tool_not_available.c

Modified: openmp/trunk/runtime/test/lit.cfg
URL: http://llvm.org/viewvc/llvm-project/openmp/trunk/runtime/test/lit.cfg?rev=336327&r1=336326&r2=336327&view=diff
==============================================================================
--- openmp/trunk/runtime/test/lit.cfg (original)
+++ openmp/trunk/runtime/test/lit.cfg Thu Jul  5 02:14:06 2018
@@ -120,7 +120,11 @@ if config.has_ompt:
     if config.operating_system == 'Windows':
         # No such environment variable on Windows.
         config.substitutions.append(("%preload-tool", "true ||"))
+        config.substitutions.append(("%no-as-needed-flag", "-Wl,--no-as-needed"))
     elif config.operating_system == 'Darwin':
         config.substitutions.append(("%preload-tool", "env DYLD_INSERT_LIBRARIES=%T/tool.so"))
+        # No such linker flag on Darwin.
+        config.substitutions.append(("%no-as-needed-flag", ""))
     else:
         config.substitutions.append(("%preload-tool", "env LD_PRELOAD=%T/tool.so"))
+        config.substitutions.append(("%no-as-needed-flag", "-Wl,--no-as-needed"))

Modified: openmp/trunk/runtime/test/ompt/loadtool/tool_available/tool_available.c
URL: http://llvm.org/viewvc/llvm-project/openmp/trunk/runtime/test/ompt/loadtool/tool_available/tool_available.c?rev=336327&r1=336326&r2=336327&view=diff
==============================================================================
--- openmp/trunk/runtime/test/ompt/loadtool/tool_available/tool_available.c (original)
+++ openmp/trunk/runtime/test/ompt/loadtool/tool_available/tool_available.c Thu Jul  5 02:14:06 2018
@@ -7,9 +7,9 @@
 // RUN: %clang %flags -DTOOL -shared -fPIC %s -o %T/tool.so
 // 2. "introducing a dynamically-linked library that includes the tool’s definition of ompt_start_tool into the application’s address space"
 // 2.1 Link with tool during compilation
-// RUN: %libomp-compile -DCODE -Wl,--no-as-needed %T/tool.so && %libomp-run | FileCheck %s
+// RUN: %libomp-compile -DCODE %no-as-needed-flag %T/tool.so && %libomp-run | FileCheck %s
 // 2.2 Link with tool during compilation, but AFTER the runtime
-// RUN: %libomp-compile -DCODE -lomp -Wl,--no-as-needed %T/tool.so && %libomp-run | FileCheck %s
+// RUN: %libomp-compile -DCODE -lomp %no-as-needed-flag %T/tool.so && %libomp-run | FileCheck %s
 // 2.3 Inject tool via the dynamic loader
 // RUN: %libomp-compile -DCODE && %preload-tool %libomp-run | FileCheck %s
 

Modified: openmp/trunk/runtime/test/ompt/loadtool/tool_not_available/tool_not_available.c
URL: http://llvm.org/viewvc/llvm-project/openmp/trunk/runtime/test/ompt/loadtool/tool_not_available/tool_not_available.c?rev=336327&r1=336326&r2=336327&view=diff
==============================================================================
--- openmp/trunk/runtime/test/ompt/loadtool/tool_not_available/tool_not_available.c (original)
+++ openmp/trunk/runtime/test/ompt/loadtool/tool_not_available/tool_not_available.c Thu Jul  5 02:14:06 2018
@@ -7,9 +7,9 @@
 // RUN: %clang %flags -DTOOL -shared -fPIC %s -o %T/tool.so
 // 2. "introducing a dynamically-linked library that includes the tool’s definition of ompt_start_tool into the application’s address space"
 // 2.1 Link with tool during compilation
-// RUN: %libomp-compile -DCODE -Wl,--no-as-needed %T/tool.so && %libomp-run | FileCheck %s
+// RUN: %libomp-compile -DCODE %no-as-needed-flag %T/tool.so && %libomp-run | FileCheck %s
 // 2.2 Link with tool during compilation, but AFTER the runtime
-// RUN: %libomp-compile -DCODE -lomp -Wl,--no-as-needed %T/tool.so && %libomp-run | FileCheck %s
+// RUN: %libomp-compile -DCODE -lomp %no-as-needed-flag %T/tool.so && %libomp-run | FileCheck %s
 // 2.3 Inject tool via the dynamic loader
 // RUN: %libomp-compile -DCODE && %preload-tool %libomp-run | FileCheck %s
 




More information about the Openmp-commits mailing list