[clang] [LinkerWrapper] Fix 'save-temps' when targeting SPIR-V (PR #144605)
via cfe-commits
cfe-commits at lists.llvm.org
Tue Jun 17 14:14:08 PDT 2025
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-clang
Author: Joseph Huber (jhuber6)
<details>
<summary>Changes</summary>
Summary:
The logic here is flawed, it was only intended to apply to the CPU case
where we use the linker passed in on the command line. This was falsely
applying to SPIR-V which caused issues.
---
Full diff: https://github.com/llvm/llvm-project/pull/144605.diff
1 Files Affected:
- (modified) clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp (+2-1)
``````````diff
diff --git a/clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp b/clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
index 7a1007d03737e..0f1fa8b329fd6 100644
--- a/clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
+++ b/clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
@@ -268,7 +268,8 @@ Expected<std::string> findProgram(StringRef Name, ArrayRef<StringRef> Paths) {
bool linkerSupportsLTO(const ArgList &Args) {
llvm::Triple Triple(Args.getLastArgValue(OPT_triple_EQ));
return Triple.isNVPTX() || Triple.isAMDGPU() ||
- Args.getLastArgValue(OPT_linker_path_EQ).ends_with("lld");
+ (!Triple.isGPU() &&
+ Args.getLastArgValue(OPT_linker_path_EQ).ends_with("lld"));
}
/// Returns the hashed value for a constant string.
``````````
</details>
https://github.com/llvm/llvm-project/pull/144605
More information about the cfe-commits
mailing list