https://github.com/MrSidims created https://github.com/llvm/llvm-project/pull/183492
It feels awkward, but it seems like it's a drawback of the current design. As sanity check constructLldCommand also has this check. >From 289db41b7ec3762fd0498af7168b89b860772aa4 Mon Sep 17 00:00:00 2001 From: Dmitry Sidorov <[email protected]> Date: Thu, 26 Feb 2026 05:04:12 -0600 Subject: [PATCH] [HIP] Check if Input is a file before constructing link job It feels awkward, but it seems like it's a drawback of the current design. As sanity check constructLldCommand also has this check. --- clang/lib/Driver/ToolChains/HIPAMD.cpp | 10 ++++++++-- clang/lib/Driver/ToolChains/SPIRV.cpp | 5 ++++- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/clang/lib/Driver/ToolChains/HIPAMD.cpp b/clang/lib/Driver/ToolChains/HIPAMD.cpp index 31f0c5581f568..979461d716d03 100644 --- a/clang/lib/Driver/ToolChains/HIPAMD.cpp +++ b/clang/lib/Driver/ToolChains/HIPAMD.cpp @@ -39,8 +39,11 @@ void AMDGCN::Linker::constructLLVMLinkCommand( ArgStringList LinkerInputs; - for (auto Input : Inputs) + for (auto Input : Inputs) { + if (!Input.isFilename()) + continue; LinkerInputs.push_back(Input.getFilename()); + } // Look for archive of bundled bitcode in arguments, and add temporary files // for the extracted archive of bitcode to inputs. @@ -131,8 +134,11 @@ void AMDGCN::Linker::constructLldCommand(Compilation &C, const JobAction &JA, } LldArgs.append({"-o", Output.getFilename()}); - for (auto Input : Inputs) + for (auto Input : Inputs) { + if (!Input.isFilename()) + continue; LldArgs.push_back(Input.getFilename()); + } // Look for archive of bundled bitcode in arguments, and add temporary files // for the extracted archive of bitcode to inputs. diff --git a/clang/lib/Driver/ToolChains/SPIRV.cpp b/clang/lib/Driver/ToolChains/SPIRV.cpp index a59bd05cac0cf..413ae34aa23c5 100644 --- a/clang/lib/Driver/ToolChains/SPIRV.cpp +++ b/clang/lib/Driver/ToolChains/SPIRV.cpp @@ -83,8 +83,11 @@ void SPIRV::constructLLVMLinkCommand(Compilation &C, const Tool &T, ArgStringList LlvmLinkArgs; - for (auto Input : Inputs) + for (auto Input : Inputs) { + if (!Input.isFilename()) + continue; LlvmLinkArgs.push_back(Input.getFilename()); + } tools::constructLLVMLinkCommand(C, T, JA, Inputs, LlvmLinkArgs, Output, Args); } _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
