summaryrefslogtreecommitdiffstats
path: root/clang/lib/Frontend
diff options
context:
space:
mode:
authorDavid Blaikie <dblaikie@gmail.com>2018-11-13 20:08:13 +0000
committerDavid Blaikie <dblaikie@gmail.com>2018-11-13 20:08:13 +0000
commit27692de9cfa6224f496b982e12ecd3fb86593cc9 (patch)
tree12088e9014d61240f1ad37a0b5e8642964722310 /clang/lib/Frontend
parentbb279116f29617467a176f065c8ca4e84174e7f7 (diff)
downloadbcm5719-llvm-27692de9cfa6224f496b982e12ecd3fb86593cc9.tar.gz
bcm5719-llvm-27692de9cfa6224f496b982e12ecd3fb86593cc9.zip
DebugInfo: Add a driver flag for DWARF debug_ranges base address specifier use.
Summary: This saves a lot of relocations in optimized object files (at the cost of some cost/increase in linked executable bytes), but gold's 32 bit gdb-index support has a bug ( https://sourceware.org/bugzilla/show_bug.cgi?id=21894 ) so we can't switch to this unconditionally. (& even if it weren't for that bug, one might argue that some users would want to optimize in one direction or the other - prioritizing object size or linked executable size) Differential Revision: https://reviews.llvm.org/D54243 llvm-svn: 346789
Diffstat (limited to 'clang/lib/Frontend')
-rw-r--r--clang/lib/Frontend/CompilerInvocation.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/clang/lib/Frontend/CompilerInvocation.cpp b/clang/lib/Frontend/CompilerInvocation.cpp
index 7be183f9701..32937d83fb4 100644
--- a/clang/lib/Frontend/CompilerInvocation.cpp
+++ b/clang/lib/Frontend/CompilerInvocation.cpp
@@ -651,6 +651,7 @@ static bool ParseCodeGenArgs(CodeGenOptions &Opts, ArgList &Args, InputKind IK,
: Args.hasArg(OPT_gpubnames)
? llvm::DICompileUnit::DebugNameTableKind::Default
: llvm::DICompileUnit::DebugNameTableKind::None);
+ Opts.DebugRangesBaseAddress = Args.hasArg(OPT_fdebug_ranges_base_address);
setPGOInstrumentor(Opts, Args, Diags);
Opts.InstrProfileOutput =
OpenPOWER on IntegriCloud