r347035 - [clang] - Simplify tools::SplitDebugName.
David Blaikie via cfe-commits
cfe-commits at lists.llvm.org
Tue Nov 27 15:15:14 PST 2018
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 at 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 at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20181127/99705d12/attachment-0001.html>
More information about the cfe-commits
mailing list