forked from OSchip/llvm-project
LTO via the gold plugin needs to be told about debugger tuning.
Differential Revision: http://reviews.llvm.org/D16094 llvm-svn: 258712
This commit is contained in:
parent
e71c99c7e2
commit
4391d09d60
|
@ -1817,6 +1817,17 @@ static void AddGoldPlugin(const ToolChain &ToolChain, const ArgList &Args,
|
|||
|
||||
if (IsThinLTO)
|
||||
CmdArgs.push_back("-plugin-opt=thinlto");
|
||||
|
||||
// If an explicit debugger tuning argument appeared, pass it along.
|
||||
if (Arg *A = Args.getLastArg(options::OPT_gTune_Group,
|
||||
options::OPT_ggdbN_Group)) {
|
||||
if (A->getOption().matches(options::OPT_glldb))
|
||||
CmdArgs.push_back("-plugin-opt=-debugger-tune=lldb");
|
||||
else if (A->getOption().matches(options::OPT_gsce))
|
||||
CmdArgs.push_back("-plugin-opt=-debugger-tune=sce");
|
||||
else
|
||||
CmdArgs.push_back("-plugin-opt=-debugger-tune=gdb");
|
||||
}
|
||||
}
|
||||
|
||||
/// This is a helper function for validating the optional refinement step
|
||||
|
|
|
@ -49,3 +49,12 @@
|
|||
// RUN: FileCheck -check-prefix=CHECK-LINK-NOLTO-ACTION < %t %s
|
||||
//
|
||||
// CHECK-LINK-NOLTO-ACTION-NOT: "-plugin" "{{.*}}/LLVMgold.so"
|
||||
|
||||
// -flto passes along an explicit debugger tuning argument.
|
||||
// RUN: %clang -target x86_64-unknown-linux -### %s -flto -glldb 2> %t
|
||||
// RUN: FileCheck -check-prefix=CHECK-TUNING-LLDB < %t %s
|
||||
// RUN: %clang -target x86_64-unknown-linux -### %s -flto -g 2> %t
|
||||
// RUN: FileCheck -check-prefix=CHECK-NO-TUNING < %t %s
|
||||
//
|
||||
// CHECK-TUNING-LLDB: "-plugin-opt=-debugger-tune=lldb"
|
||||
// CHECK-NO-TUNING-NOT: "-plugin-opt=-debugger-tune
|
||||
|
|
Loading…
Reference in New Issue