aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Christopher <echristo@gmail.com>2013-02-21 22:35:05 +0000
committerEric Christopher <echristo@gmail.com>2013-02-21 22:35:05 +0000
commitf870e12f2324f48248793035ab0edb35d66e2299 (patch)
tree6a39f50c176308f4c46fc91c00908c9506b78b16
parent59320e770f90a59c74f2be10f198e3c390195628 (diff)
Don't pass -split-dwarf= to the backend unless we're on linux for
now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175814 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Driver/Tools.cpp4
-rw-r--r--test/Driver/split-debug.c4
2 files changed, 7 insertions, 1 deletions
diff --git a/lib/Driver/Tools.cpp b/lib/Driver/Tools.cpp
index da23fd5130..27d019b4fc 100644
--- a/lib/Driver/Tools.cpp
+++ b/lib/Driver/Tools.cpp
@@ -2311,7 +2311,9 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
// -gsplit-dwarf should turn on -g and enable the backend dwarf
// splitting and extraction.
- if (Args.hasArg(options::OPT_gsplit_dwarf)) {
+ // FIXME: Currently only works on Linux.
+ if (getToolChain().getTriple().getOS() == llvm::Triple::Linux &&
+ Args.hasArg(options::OPT_gsplit_dwarf)) {
CmdArgs.push_back("-g");
CmdArgs.push_back("-backend-option");
CmdArgs.push_back("-split-dwarf=Enable");
diff --git a/test/Driver/split-debug.c b/test/Driver/split-debug.c
index a3711e4c0f..fb01953b0d 100644
--- a/test/Driver/split-debug.c
+++ b/test/Driver/split-debug.c
@@ -8,3 +8,7 @@
// CHECK-ACTIONS: objcopy{{.*}}--strip-dwo{{.*}}"split-debug.o"
+// RUN: %clang -target x86_64-macosx -gsplit-dwarf -c -### %s 2> %t
+// RUN: FileCheck -check-prefix=CHECK-NO-ACTIONS < %t %s
+//
+// CHECK-NO-ACTIONS-NOT: -split-dwarf