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 findProgram(StringRef Name, ArrayRef 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.