]> granicus.if.org Git - clang/commitdiff
Revert "Debug info: Make DWARF4 the default for Darwin, too."
authorAdrian Prantl <aprantl@apple.com>
Mon, 17 Feb 2014 17:40:52 +0000 (17:40 +0000)
committerAdrian Prantl <aprantl@apple.com>
Mon, 17 Feb 2014 17:40:52 +0000 (17:40 +0000)
I'm holding this change to give maintainers of Darwin buildbots more time
to update their toolchains.

This reverts commit r201375.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@201520 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Driver/Tools.cpp
test/CodeGen/dwarf-version.c
test/Driver/clang-g-opts.c
test/Driver/debug-options.c

index ee64d4213c7a1e610b173f0d0b05add1b1cadd30..d1e58bac01426114e7a2267c5d049034ae5cddac 100644 (file)
@@ -2660,6 +2660,9 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
       // FIXME: we should support specifying dwarf version with
       // -gline-tables-only.
       CmdArgs.push_back("-gline-tables-only");
+      // Default is dwarf-2 for darwin.
+      if (getToolChain().getTriple().isOSDarwin())
+        CmdArgs.push_back("-gdwarf-2");
     } else if (A->getOption().matches(options::OPT_gdwarf_2))
       CmdArgs.push_back("-gdwarf-2");
     else if (A->getOption().matches(options::OPT_gdwarf_3))
@@ -2667,8 +2670,13 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
     else if (A->getOption().matches(options::OPT_gdwarf_4))
       CmdArgs.push_back("-gdwarf-4");
     else if (!A->getOption().matches(options::OPT_g0) &&
-             !A->getOption().matches(options::OPT_ggdb0))
-      CmdArgs.push_back("-g");
+             !A->getOption().matches(options::OPT_ggdb0)) {
+      // Default is dwarf-2 for darwin.
+      if (getToolChain().getTriple().isOSDarwin())
+        CmdArgs.push_back("-gdwarf-2");
+      else
+        CmdArgs.push_back("-g");
+    }
   }
 
   // We ignore flags -gstrict-dwarf and -grecord-gcc-switches for now.
index 0756ffbb96603aff33983d78dea828d1b9636bb1..6c0f097a3b88458673df40ccae1ebc03a4fe375a 100644 (file)
@@ -11,4 +11,4 @@ int main (void) {
 // VER3: metadata !{i32 2, metadata !"Dwarf Version", i32 3}
 // VER4: metadata !{i32 2, metadata !"Dwarf Version", i32 4}
 // LINUX: metadata !{i32 2, metadata !"Dwarf Version", i32 4}
-// DARWIN: metadata !{i32 2, metadata !"Dwarf Version", i32 4}
+// DARWIN: metadata !{i32 2, metadata !"Dwarf Version", i32 2}
index 49a5fefb360feacd900e695dccecd626d025f9a2..9ca1fd38e4075d0ad13667820faf5963299c3b9b 100644 (file)
@@ -12,5 +12,5 @@
 
 // CHECK-WITHOUT-G-NOT: "-g"
 // CHECK-WITH-G: "-g"
-// CHECK-WITH-G-DARWIN: "-g"
+// CHECK-WITH-G-DARWIN: "-gdwarf-2"
 
index d18c26878a738cfa46001378d9a533aee2deaf9f..2ea4990bd0acc0a236544ae6fd7aa3da77359865 100644 (file)
 // RUN: %clang -### -c -gline-tables-only %s 2>&1 \
 // RUN:             | FileCheck -check-prefix=GLTO_ONLY %s
 // RUN: %clang -### -c -gline-tables-only %s -target x86_64-apple-darwin 2>&1 \
-// RUN:             | FileCheck -check-prefix=GLTO_ONLY %s
+// RUN:             | FileCheck -check-prefix=GLTO_ONLY_DARWIN %s
 // RUN: %clang -### -c -gline-tables-only -g %s -target x86_64-linux-gnu 2>&1 \
 // RUN:             | FileCheck -check-prefix=G_ONLY %s
 // RUN: %clang -### -c -gline-tables-only -g %s -target x86_64-apple-darwin 2>&1 \
-// RUN:             | FileCheck -check-prefix=G_ONLY %s
+// RUN:             | FileCheck -check-prefix=G_ONLY_DARWIN %s
 // RUN: %clang -### -c -gline-tables-only -g0 %s 2>&1 \
 // RUN:             | FileCheck -check-prefix=GLTO_NO %s
 //
 // GLTO_ONLY: "-gline-tables-only"
 // GLTO_ONLY-NOT: "-g"
 //
+// GLTO_ONLY_DARWIN: "-cc1"
+// GLTO_ONLY_DARWIN-NOT: "-g"
+// GLTO_ONLY_DARWIN: "-gline-tables-only"
+// GLTO_ONLY_DARWIN: "-gdwarf-2"
+// GLTO_ONLY_DARWIN-NOT: "-g"
+//
 // G_ONLY: "-cc1"
 // G_ONLY-NOT: "-gline-tables-only"
 // G_ONLY: "-g"
 // G_ONLY-NOT: "-gline-tables-only"
 //
+// G_ONLY_DARWIN: "-cc1"
+// G_ONLY_DARWIN-NOT: "-gline-tables-only"
+// G_ONLY_DARWIN: "-gdwarf-2"
+// G_ONLY_DARWIN-NOT: "-gline-tables-only"
+//
 // GLTO_NO: "-cc1"
 // GLTO_NO-NOT: "-gline-tables-only"
 //