[clang] eb48aac - [Clang] Automatically link the `compiler-rt` for GPUs if present (#109152)
via cfe-commits
cfe-commits at lists.llvm.org
Wed Sep 25 12:58:14 PDT 2024
Author: Joseph Huber
Date: 2024-09-25T12:58:10-07:00
New Revision: eb48aac7d40ee9cd3072c466d7ab17facb58570f
URL: https://github.com/llvm/llvm-project/commit/eb48aac7d40ee9cd3072c466d7ab17facb58570f
DIFF: https://github.com/llvm/llvm-project/commit/eb48aac7d40ee9cd3072c466d7ab17facb58570f.diff
LOG: [Clang] Automatically link the `compiler-rt` for GPUs if present (#109152)
Summary:
This automically links `copmiler-rt` for offloading languages if it
exists in the resource directory.
Added:
Modified:
clang/lib/Driver/ToolChains/Clang.cpp
Removed:
################################################################################
diff --git a/clang/lib/Driver/ToolChains/Clang.cpp b/clang/lib/Driver/ToolChains/Clang.cpp
index 0bab48caf1a5e2..a883ba2a25412e 100644
--- a/clang/lib/Driver/ToolChains/Clang.cpp
+++ b/clang/lib/Driver/ToolChains/Clang.cpp
@@ -9242,6 +9242,12 @@ void LinkerWrapper::ConstructJob(Compilation &C, const JobAction &JA,
CmdArgs.push_back(Args.MakeArgString(
"--device-linker=" + TC.getTripleString() + "=" + "-lm"));
}
+ auto HasCompilerRT = getToolChain().getVFS().exists(
+ TC.getCompilerRT(Args, "builtins", ToolChain::FT_Static));
+ if (HasCompilerRT)
+ CmdArgs.push_back(
+ Args.MakeArgString("--device-linker=" + TC.getTripleString() + "=" +
+ "-lclang_rt.builtins"));
});
}
More information about the cfe-commits
mailing list