diff options
author | David Blaikie <dblaikie@gmail.com> | 2018-11-13 20:08:13 +0000 |
---|---|---|
committer | David Blaikie <dblaikie@gmail.com> | 2018-11-13 20:08:13 +0000 |
commit | 27692de9cfa6224f496b982e12ecd3fb86593cc9 (patch) | |
tree | 12088e9014d61240f1ad37a0b5e8642964722310 /clang/lib/Frontend | |
parent | bb279116f29617467a176f065c8ca4e84174e7f7 (diff) | |
download | bcm5719-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.cpp | 1 |
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 = |