[PATCH] D143306: [Driver] Default to -fno-openmp-implicit-rpath

Johannes Doerfert via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Feb 22 14:10:31 PST 2023


jdoerfert added a comment.

In D143306#4145603 <https://reviews.llvm.org/D143306#4145603>, @tstellar wrote:

> In D143306#4145432 <https://reviews.llvm.org/D143306#4145432>, @MaskRay wrote:
>
>> This is the point. Specifying a driver option to use libc++/libc++abi/libunwind doesn't magically change `DT_RUNPATH`. This is exactly the behavior a user wants for a system Clang.
>> It does make users with a non-system Clang inconvenient but that's the point that such users should specify rpath by themselves.
>> openmp should not diverge from libc++/libc++abi/libunwind in this regard.
>
> To me this is a really strong argument in favor of this change.  Why does libomp need to be different here?

Because lots of HPC users wouldn't use it otherwise. (In the sense that it doesn't work out-of-the-box and they give up.)

To make more technical arguments why this is different:

- libomp(target) is the only one of these runtimes that has multiple levels of dynamically loaded runtimes (at least that I know of).
- libomp(target) is the only one that is modified and distributed under the same name by ~4 "other compilers" (XL, icx, amdclang, cce) and as such appears on a system multiple times in incompatible but somewhat "same" looking versions.
- libomp(target) is build and used by application developers directly from our main/dev branch


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D143306/new/

https://reviews.llvm.org/D143306



More information about the cfe-commits mailing list