From 7f3d95054b492fbf6ebc22f7db32fb1574f25e6c Mon Sep 17 00:00:00 2001 From: Daniel Dunbar Date: Fri, 4 Jun 2010 18:47:06 +0000 Subject: Driver: Change -dwarf-debug-flags option to pass the original command line arguments after translation, instead of the -cc1 level arguments. llvm-svn: 105476 --- clang/lib/Driver/Tools.cpp | 9 +++++++-- clang/test/Driver/darwin-debug-flags.c | 6 ++---- 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 @@ // // 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; -- cgit v1.2.3