================ @@ -9249,8 +9249,20 @@ 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); + + // 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); ---------------- jhuber6 wrote:
I'm wondering if we couldn't just make this a separate type of action. Like a relocatable linker wrapper thing. Can look into that in a follow up though. https://github.com/llvm/llvm-project/pull/143964 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits