jhuber6 added inline comments.
================ Comment at: clang/lib/Driver/ToolChains/AMDGPU.cpp:546 addLinkerCompressDebugSectionsOption(getToolChain(), Args, CmdArgs); AddLinkerInputs(getToolChain(), Inputs, Args, CmdArgs, JA); + Args.AddAllArgs(CmdArgs, options::OPT_L); ---------------- yaxunl wrote: > jhuber6 wrote: > > yaxunl wrote: > > > AddLinkerInputs has code doing that, and it handles env var LIBRARY_PATH. > > > However that code is disabled for AMDGPU because AMDGPU returns true for > > > isCrossCompiling. > > > > > > https://github.com/llvm/llvm-project/blob/main/clang/lib/Driver/ToolChains/CommonArgs.cpp#L236 > > > > > > It seems isCrossCompiling is solely for controlling whether to consume > > > `-L`. If we want amdgpu toolchain to accept `-L`, we can simply let > > > isCrossCompiling return false. > > Good catch, we could maybe set `isCrossCompiling` to false if targeted > > directly by the user, e.g. `--target=amdgcn-amd-amdhsa` vs `--offload-arch`. > That would be better. Thanks. It still is technically cross compiling, since we are building for a target that does not match the system's architecture. The original code that prevents passing `-L` was contributed by @MaskRay. I understand that we may not want to pass `LIBRARY_PATH` defines, but what's the rationale for not passing any `-L` options manually specified by the user? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D150013/new/ https://reviews.llvm.org/D150013 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits