The AMDGPU linker is `lld`, which has full support for standard features
like static libraries. Previously the AMDGPU toolchain did not forward
`-L` arguments so we could not tell it where to find certain libraries.
This patch simply forwards it like the other toolchains.
Reviewed By: yaxunl, MaskRay
Differential Revision: https://reviews.llvm.org/
D150013
Args.AddAllArgValues(CmdArgs, options::OPT_Zlinker_input);
// LIBRARY_PATH are included before user inputs and only supported on native
- // toolchains.
+ // toolchains. Otherwise only add the '-L' arguments requested by the user.
if (!TC.isCrossCompiling())
addDirectoryList(Args, CmdArgs, "-L", "LIBRARY_PATH");
+ else
+ Args.AddAllArgs(CmdArgs, options::OPT_L);
for (const auto &II : Inputs) {
// If the current tool chain refers to an OpenMP offloading host, we
// DWARF_VER: "-dwarf-version=5"
// RUN: %clang -### --target=amdgcn-amd-amdhsa -mcpu=gfx906 -nogpulib \
-// RUN: -flto -fconvergent-functions %s 2>&1 | FileCheck -check-prefix=LTO %s
+// RUN: -L. -flto -fconvergent-functions %s 2>&1 | FileCheck -check-prefix=LTO %s
// LTO: clang{{.*}} "-flto=full"{{.*}}"-fconvergent-functions"
-// LTO: ld.lld{{.*}}-plugin-opt=mcpu=gfx906
+// LTO: ld.lld{{.*}}"-L."{{.*}}"-plugin-opt=mcpu=gfx906"