svn commit: r343429 - head/contrib/llvm/tools/clang/lib/Driver/ToolChains
Ed Maste
emaste at FreeBSD.org
Fri Jan 25 14:46:14 UTC 2019
Author: emaste
Date: Fri Jan 25 14:46:13 2019
New Revision: 343429
URL: https://svnweb.freebsd.org/changeset/base/343429
Log:
clang: default to DWARF 4 as of FreeBSD 13
FreeBSD previously defaulted to DWARF 2 because several tools (gdb,
ctfconvert, etc.) did not support later versions. These have either
been fixed or are deprecated.
Note that gdb 6 still exists but has been moved out of $PATH into
/usr/libexec and is intended only for use by crashinfo(8). The kernel
build sets the DWARF version explicitly via -gdwarf2, so this should
have no effect there.
PR: 234887 [exp-run]
Reviewed by: markj
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D17930
Modified:
head/contrib/llvm/tools/clang/lib/Driver/ToolChains/FreeBSD.cpp
head/contrib/llvm/tools/clang/lib/Driver/ToolChains/FreeBSD.h
Modified: head/contrib/llvm/tools/clang/lib/Driver/ToolChains/FreeBSD.cpp
==============================================================================
--- head/contrib/llvm/tools/clang/lib/Driver/ToolChains/FreeBSD.cpp Fri Jan 25 13:57:09 2019 (r343428)
+++ head/contrib/llvm/tools/clang/lib/Driver/ToolChains/FreeBSD.cpp Fri Jan 25 14:46:13 2019 (r343429)
@@ -357,6 +357,13 @@ ToolChain::CXXStdlibType FreeBSD::GetDefaultCXXStdlibT
return ToolChain::CST_Libstdcxx;
}
+unsigned FreeBSD::GetDefaultDwarfVersion() const {
+ // Default to use DWARF 2 before FreeBSD 13.
+ if (getTriple().getOSMajorVersion() < 13)
+ return 2;
+ return 4;
+}
+
void FreeBSD::addLibStdCxxIncludePaths(
const llvm::opt::ArgList &DriverArgs,
llvm::opt::ArgStringList &CC1Args) const {
Modified: head/contrib/llvm/tools/clang/lib/Driver/ToolChains/FreeBSD.h
==============================================================================
--- head/contrib/llvm/tools/clang/lib/Driver/ToolChains/FreeBSD.h Fri Jan 25 13:57:09 2019 (r343428)
+++ head/contrib/llvm/tools/clang/lib/Driver/ToolChains/FreeBSD.h Fri Jan 25 14:46:13 2019 (r343429)
@@ -70,7 +70,7 @@ class LLVM_LIBRARY_VISIBILITY FreeBSD : public Generic
const llvm::opt::ArgList &Args) const override;
bool isPIEDefault() const override;
SanitizerMask getSupportedSanitizers() const override;
- unsigned GetDefaultDwarfVersion() const override { return 2; }
+ unsigned GetDefaultDwarfVersion() const override;
// Until dtrace (via CTF) and LLDB can deal with distributed debug info,
// FreeBSD defaults to standalone/full debug info.
bool GetDefaultStandaloneDebug() const override { return true; }
More information about the svn-src-head
mailing list