[PING^2] libgomp testsuite: Don't amend 'LD_LIBRARY_PATH' for system-provided HSA Runtime library (was: [PATCH 1/4] Remove build dependence on HSA run-time)
Commit Message
Hi!
Ping^2.
Grüße
Thomas
On 2022-04-28T15:48:13+0200, I wrote:
> Hi!
>
> Ping.
>
> On 2022-04-06T11:20:47+0200, I wrote:
>> On 2021-01-14T15:50:23+0100, I wrote:
>>> I'm raising here an issue with HSA libgomp plugin code changes from a
>>> while ago. While HSA is now no longer relevant for GCC master branch,
>>> the same code has also been copied into the GCN libgomp plugin.
>>
>> Here is another small clean-up patch (to enable further clean-up):
>>
>>> This is commit b8d89b03db5f212919e4571671ebb4f5f8b1e19d (r242749) "Remove
>>> build dependence on HSA run-time":
>>>
>>> On 2016-11-22T14:27:44+0100, Martin Jambor <mjambor@suse.cz> wrote:
>>>> --- a/libgomp/plugin/configfrag.ac
>>>> +++ b/libgomp/plugin/configfrag.ac
>>>
>>>> @@ -195,8 +183,8 @@ if test x"$enable_offload_targets" != x; then
>>>> tgt_name=hsa
>>>> PLUGIN_HSA=$tgt
>>>> PLUGIN_HSA_CPPFLAGS=$HSA_RUNTIME_CPPFLAGS
>>>> - PLUGIN_HSA_LDFLAGS="$HSA_RUNTIME_LDFLAGS $HSA_KMT_LDFLAGS"
>>>> - PLUGIN_HSA_LIBS="-lhsa-runtime64 -lhsakmt"
>>>> + PLUGIN_HSA_LDFLAGS="$HSA_RUNTIME_LDFLAGS"
>>>> + PLUGIN_HSA_LIBS="-ldl"
>>>
>>> So this switched from directly linking against 'libhsa-runtime64.so' to a
>>> 'libdl'-based runtime linking variant.
>>
>> (Not intending to change anything regarding that.)
>>
>>> For avoidance of doubt, [an earlier] change doesn't affect (build-tree) testsuite
>>> usage, where we have:
>>>
>>> libgomp/testsuite/libgomp-test-support.exp.in:set hsa_runtime_lib "@HSA_RUNTIME_LIB@"
>>>
>>> libgomp/testsuite/lib/libgomp.exp: append always_ld_library_path ":$hsa_runtime_lib"
>>
>> But, as I argue in the attached "libgomp testsuite: Don't amend
>> 'LD_LIBRARY_PATH' for system-provided HSA Runtime library", we should
>> actually clean this up as well. OK to push that?
>>
>>
>> Grüße
>> Thomas
-----------------
Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955
From 364d01339883f5276ef09d68a5d9a2e0010ab641 Mon Sep 17 00:00:00 2001
From: Thomas Schwinge <thomas@codesourcery.com>
Date: Wed, 6 Apr 2022 10:39:56 +0200
Subject: [PATCH] libgomp testsuite: Don't amend 'LD_LIBRARY_PATH' for
system-provided HSA Runtime library
This is only active if GCC is 'configure'd with '--with-hsa-runtime=[...]' or
'--with-hsa-runtime-lib=[...]' -- which nobody really is doing, as far as I can
tell.
'libgomp/testsuite/lib/libgomp.exp:libgomp_init' states:
# For build-tree testing, also consider the library paths used for builing.
# For installed testing, we assume all that to be provided in the sysroot.
if { $blddir != "" } {
[...]
global hsa_runtime_lib
if { $hsa_runtime_lib != "" } {
append always_ld_library_path ":$hsa_runtime_lib"
}
}
However, the libgomp GCN plugin is unconditionally built against the
GCC-shipped 'include/hsa*.h' header files, and at run time does
'dlopen("libhsa-runtime64.so.1")', so there is no system-provided HSA Runtime
library "used for builing". It thus doesn't make sense to amend
'LD_LIBRARY_PATH' for system-provided HSA Runtime library.
libgomp/
* testsuite/lib/libgomp.exp (libgomp_init): Don't
'append always_ld_library_path ":$hsa_runtime_lib"'.
* testsuite/libgomp-test-support.exp.in (hsa_runtime_lib): Don't set.
---
libgomp/testsuite/lib/libgomp.exp | 4 ----
libgomp/testsuite/libgomp-test-support.exp.in | 1 -
2 files changed, 5 deletions(-)
@@ -202,10 +202,6 @@ proc libgomp_init { args } {
lappend ALWAYS_CFLAGS "additional_flags=-L$cuda_driver_lib"
append always_ld_library_path ":$cuda_driver_lib"
}
- global hsa_runtime_lib
- if { $hsa_runtime_lib != "" } {
- append always_ld_library_path ":$hsa_runtime_lib"
- }
}
# We use atomic operations in the testcases to validate results.
@@ -1,6 +1,5 @@
set cuda_driver_include "@CUDA_DRIVER_INCLUDE@"
set cuda_driver_lib "@CUDA_DRIVER_LIB@"
-set hsa_runtime_lib "@HSA_RUNTIME_LIB@"
set offload_plugins "@offload_plugins@"
set offload_targets "@offload_targets@"
--
2.35.1