[clang] [HIP] use offload wrapper for non-device-only non-rdc (PR #132869)
Joseph Huber via cfe-commits
cfe-commits at lists.llvm.org
Thu Mar 27 11:23:42 PDT 2025
================
@@ -9348,11 +9348,22 @@ void LinkerWrapper::ConstructJob(Compilation &C, const JobAction &JA,
// Add the linker arguments to be forwarded by the wrapper.
CmdArgs.push_back(Args.MakeArgString(Twine("--linker-path=") +
LinkCommand->getExecutable()));
- for (const char *LinkArg : LinkCommand->getArguments())
- CmdArgs.push_back(LinkArg);
- addOffloadCompressArgs(Args, CmdArgs);
+ // We use action type to differentiate two use cases of the linker wrapper.
+ // TY_Image for normal linker wrapper work.
+ // TY_Object for HIP fno-gpu-rdc embedding device binary in a relocatable
+ // object.
+ assert(JA.getType() == types::TY_Object || JA.getType() == types::TY_Image);
+ if (JA.getType() == types::TY_Object) {
+ CmdArgs.append({"-o", Output.getFilename()});
+ for (auto Input : Inputs)
----------------
jhuber6 wrote:
Okay
https://github.com/llvm/llvm-project/pull/132869
More information about the cfe-commits
mailing list