summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--clang/lib/Frontend/CompilerInvocation.cpp7
-rw-r--r--clang/test/CodeGenCXX/debug-info-vtable-optzn.cpp3
2 files changed, 6 insertions, 4 deletions
diff --git a/clang/lib/Frontend/CompilerInvocation.cpp b/clang/lib/Frontend/CompilerInvocation.cpp
index a6b1b458e79..076572e7505 100644
--- a/clang/lib/Frontend/CompilerInvocation.cpp
+++ b/clang/lib/Frontend/CompilerInvocation.cpp
@@ -337,9 +337,10 @@ static bool ParseCodeGenArgs(CodeGenOptions &Opts, ArgList &Args, InputKind IK,
} else if (Args.hasArg(OPT_g_Flag) || Args.hasArg(OPT_gdwarf_2) ||
Args.hasArg(OPT_gdwarf_3) || Args.hasArg(OPT_gdwarf_4)) {
bool Default = false;
- // Until dtrace (via CTF) can deal with distributed debug info,
- // Darwin defaults to standalone/full debug info.
- if (llvm::Triple(TargetOpts.Triple).isOSDarwin())
+ // Until dtrace (via CTF) and LLDB can deal with distributed debug info,
+ // Darwin and FreeBSD default to standalone/full debug info.
+ if (llvm::Triple(TargetOpts.Triple).isOSDarwin() ||
+ llvm::Triple(TargetOpts.Triple).isOSFreeBSD())
Default = true;
if (Args.hasFlag(OPT_fstandalone_debug, OPT_fno_standalone_debug, Default))
diff --git a/clang/test/CodeGenCXX/debug-info-vtable-optzn.cpp b/clang/test/CodeGenCXX/debug-info-vtable-optzn.cpp
index 8a6d4ff3e0f..c693f794b26 100644
--- a/clang/test/CodeGenCXX/debug-info-vtable-optzn.cpp
+++ b/clang/test/CodeGenCXX/debug-info-vtable-optzn.cpp
@@ -1,8 +1,9 @@
// RUN: %clang_cc1 -emit-llvm -g -triple x86_64-apple-darwin %s -o - | FileCheck %s
+// RUN: %clang_cc1 -emit-llvm -g -triple amd64-unknown-freebsd %s -o - | FileCheck %s
//
// This tests that the "emit debug info for a C++ class only in the
// module that has its vtable" optimization is disabled by default on
-// Darwin.
+// Darwin and FreeBSD.
//
// CHECK: [ DW_TAG_member ] [lost]
class A
OpenPOWER on IntegriCloud