summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2010-06-04 18:47:06 +0000
committerDaniel Dunbar <daniel@zuster.org>2010-06-04 18:47:06 +0000
commit7f3d95054b492fbf6ebc22f7db32fb1574f25e6c (patch)
tree0831dbc12148479fecaa4aca4ac29a08b208d4ec
parent6beaf5110f32ab1ef15c1603e0f975d3b73e3b6c (diff)
downloadbcm5719-llvm-7f3d95054b492fbf6ebc22f7db32fb1574f25e6c.tar.gz
bcm5719-llvm-7f3d95054b492fbf6ebc22f7db32fb1574f25e6c.zip
Driver: Change -dwarf-debug-flags option to pass the original command line
arguments after translation, instead of the -cc1 level arguments. llvm-svn: 105476
-rw-r--r--clang/lib/Driver/Tools.cpp9
-rw-r--r--clang/test/Driver/darwin-debug-flags.c6
2 files changed, 9 insertions, 6 deletions
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp
index 78f2d700737..4ab32ed3eff 100644
--- a/clang/lib/Driver/Tools.cpp
+++ b/clang/lib/Driver/Tools.cpp
@@ -1462,11 +1462,16 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
// Optionally embed the -cc1 level arguments into the debug info, for build
// analysis.
if (getToolChain().UseDwarfDebugFlags()) {
+ ArgStringList OriginalArgs;
+ for (ArgList::const_iterator it = Args.begin(),
+ ie = Args.end(); it != ie; ++it)
+ (*it)->render(Args, OriginalArgs);
+
llvm::SmallString<256> Flags;
Flags += Exec;
- for (unsigned i = 0, e = CmdArgs.size(); i != e; ++i) {
+ for (unsigned i = 0, e = OriginalArgs.size(); i != e; ++i) {
Flags += " ";
- Flags += CmdArgs[i];
+ Flags += OriginalArgs[i];
}
CmdArgs.push_back("-dwarf-debug-flags");
CmdArgs.push_back(Args.MakeArgString(Flags.str()));
diff --git a/clang/test/Driver/darwin-debug-flags.c b/clang/test/Driver/darwin-debug-flags.c
index 7ce61378413..6f245271d58 100644
--- a/clang/test/Driver/darwin-debug-flags.c
+++ b/clang/test/Driver/darwin-debug-flags.c
@@ -2,10 +2,8 @@
// <rdar://problem/7256886>
// CHECK: !1 = metadata !{
-// CHECK: -cc1
-// CHECK: -triple i386-apple-darwin9
-// CHECK: -g
-// CHECK: -Os
+// CHECK: -mmacosx-version-min=10.5.0
+// CHECK: -g -Os
// CHECK: [ DW_TAG_compile_unit ]
int x;
OpenPOWER on IntegriCloud