Just copying some of the information given through Phab ( https://reviews.llvm.org/rL347035 ) - this patch was reverted in r347676. Would be great to get that fixed/recommitted!
On Fri, Nov 16, 2018 at 12:01 AM George Rimar via cfe-commits < cfe-commits@lists.llvm.org> wrote: > Author: grimar > Date: Thu Nov 15 23:59:24 2018 > New Revision: 347035 > > URL: http://llvm.org/viewvc/llvm-project?rev=347035&view=rev > Log: > [clang] - Simplify tools::SplitDebugName. > > This should be NFC change. > > SplitDebugName recently started to accept the `Output` that > can be used to simplify the logic a bit, also it > seems that code in SplitDebugName that uses > OPT_fdebug_compilation_dir is simply dead. > > Differential revision: https://reviews.llvm.org/D54576 > > Modified: > cfe/trunk/lib/Driver/ToolChains/Clang.cpp > cfe/trunk/lib/Driver/ToolChains/CommonArgs.cpp > cfe/trunk/lib/Driver/ToolChains/CommonArgs.h > cfe/trunk/lib/Driver/ToolChains/Gnu.cpp > cfe/trunk/lib/Driver/ToolChains/MinGW.cpp > > Modified: cfe/trunk/lib/Driver/ToolChains/Clang.cpp > URL: > http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/ToolChains/Clang.cpp?rev=347035&r1=347034&r2=347035&view=diff > > ============================================================================== > --- cfe/trunk/lib/Driver/ToolChains/Clang.cpp (original) > +++ cfe/trunk/lib/Driver/ToolChains/Clang.cpp Thu Nov 15 23:59:24 2018 > @@ -3936,7 +3936,7 @@ void Clang::ConstructJob(Compilation &C, > const char *SplitDWARFOut; > if (SplitDWARF) { > CmdArgs.push_back("-split-dwarf-file"); > - SplitDWARFOut = SplitDebugName(Args, Input, Output); > + SplitDWARFOut = SplitDebugName(Args, Output); > CmdArgs.push_back(SplitDWARFOut); > } > > @@ -5902,7 +5902,7 @@ void ClangAs::ConstructJob(Compilation & > if ((getDebugFissionKind(D, Args, A) == DwarfFissionKind::Split) && > (T.isOSLinux() || T.isOSFuchsia())) { > CmdArgs.push_back("-split-dwarf-file"); > - CmdArgs.push_back(SplitDebugName(Args, Input, Output)); > + CmdArgs.push_back(SplitDebugName(Args, Output)); > } > > assert(Input.isFilename() && "Invalid input."); > > Modified: cfe/trunk/lib/Driver/ToolChains/CommonArgs.cpp > URL: > http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/ToolChains/CommonArgs.cpp?rev=347035&r1=347034&r2=347035&view=diff > > ============================================================================== > --- cfe/trunk/lib/Driver/ToolChains/CommonArgs.cpp (original) > +++ cfe/trunk/lib/Driver/ToolChains/CommonArgs.cpp Thu Nov 15 23:59:24 2018 > @@ -808,26 +808,15 @@ bool tools::areOptimizationsEnabled(cons > return false; > } > > -const char *tools::SplitDebugName(const ArgList &Args, const InputInfo > &Input, > +const char *tools::SplitDebugName(const ArgList &Args, > const InputInfo &Output) { > if (Arg *A = Args.getLastArg(options::OPT_gsplit_dwarf_EQ)) > if (StringRef(A->getValue()) == "single") > return Args.MakeArgString(Output.getFilename()); > > - Arg *FinalOutput = Args.getLastArg(options::OPT_o); > - if (FinalOutput && Args.hasArg(options::OPT_c)) { > - SmallString<128> T(FinalOutput->getValue()); > - llvm::sys::path::replace_extension(T, "dwo"); > - return Args.MakeArgString(T); > - } else { > - // Use the compilation dir. > - SmallString<128> T( > - Args.getLastArgValue(options::OPT_fdebug_compilation_dir)); > - SmallString<128> F(llvm::sys::path::stem(Input.getBaseInput())); > - llvm::sys::path::replace_extension(F, "dwo"); > - T += F; > - return Args.MakeArgString(F); > - } > + SmallString<128> T(Output.getFilename()); > + llvm::sys::path::replace_extension(T, "dwo"); > + return Args.MakeArgString(T); > } > > void tools::SplitDebugInfo(const ToolChain &TC, Compilation &C, const > Tool &T, > > Modified: cfe/trunk/lib/Driver/ToolChains/CommonArgs.h > URL: > http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/ToolChains/CommonArgs.h?rev=347035&r1=347034&r2=347035&view=diff > > ============================================================================== > --- cfe/trunk/lib/Driver/ToolChains/CommonArgs.h (original) > +++ cfe/trunk/lib/Driver/ToolChains/CommonArgs.h Thu Nov 15 23:59:24 2018 > @@ -63,7 +63,7 @@ void AddHIPLinkerScript(const ToolChain > const Tool &T); > > const char *SplitDebugName(const llvm::opt::ArgList &Args, > - const InputInfo &Input, const InputInfo > &Output); > + const InputInfo &Output); > > void SplitDebugInfo(const ToolChain &TC, Compilation &C, const Tool &T, > const JobAction &JA, const llvm::opt::ArgList &Args, > > Modified: cfe/trunk/lib/Driver/ToolChains/Gnu.cpp > URL: > http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/ToolChains/Gnu.cpp?rev=347035&r1=347034&r2=347035&view=diff > > ============================================================================== > --- cfe/trunk/lib/Driver/ToolChains/Gnu.cpp (original) > +++ cfe/trunk/lib/Driver/ToolChains/Gnu.cpp Thu Nov 15 23:59:24 2018 > @@ -817,7 +817,7 @@ void tools::gnutools::Assembler::Constru > if (Args.hasArg(options::OPT_gsplit_dwarf) && > getToolChain().getTriple().isOSLinux()) > SplitDebugInfo(getToolChain(), C, *this, JA, Args, Output, > - SplitDebugName(Args, Inputs[0], Output)); > + SplitDebugName(Args, Output)); > } > > namespace { > > Modified: cfe/trunk/lib/Driver/ToolChains/MinGW.cpp > URL: > http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/ToolChains/MinGW.cpp?rev=347035&r1=347034&r2=347035&view=diff > > ============================================================================== > --- cfe/trunk/lib/Driver/ToolChains/MinGW.cpp (original) > +++ cfe/trunk/lib/Driver/ToolChains/MinGW.cpp Thu Nov 15 23:59:24 2018 > @@ -54,7 +54,7 @@ void tools::MinGW::Assembler::ConstructJ > > if (Args.hasArg(options::OPT_gsplit_dwarf)) > SplitDebugInfo(getToolChain(), C, *this, JA, Args, Output, > - SplitDebugName(Args, Inputs[0], Output)); > + SplitDebugName(Args, Output)); > } > > void tools::MinGW::Linker::AddLibGCC(const ArgList &Args, > > > _______________________________________________ > cfe-commits mailing list > cfe-commits@lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits >
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits