================ @@ -247,6 +247,30 @@ void tools::hlsl::MetalConverter::ConstructJob( Exec, CmdArgs, Inputs, Input)); } +void tools::hlsl::LLVMObjcopy::ConstructJob(Compilation &C, const JobAction &JA, + const InputInfo &Output, + const InputInfoList &Inputs, + const ArgList &Args, + const char *LinkingOutput) const { + + std::string ObjcopyPath = getToolChain().GetProgramPath("llvm-objcopy"); + const char *Exec = Args.MakeArgString(ObjcopyPath); + + ArgStringList CmdArgs; + assert(Inputs.size() == 1 && "Unable to handle multiple inputs."); + const InputInfo &Input = Inputs[0]; + CmdArgs.push_back(Input.getFilename()); + CmdArgs.push_back(Output.getFilename()); + + if (Args.hasArg(options::OPT_dxc_strip_rootsignature)) { + const char *Frs = Args.MakeArgString("--remove-section=RTS0"); + CmdArgs.push_back(Frs); + } + ---------------- llvm-beanz wrote:
Should we assert that `CmdArgs > 2` to ensure that we didn't just invoke objcopy for no reason? https://github.com/llvm/llvm-project/pull/154454 _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits