diff options
author | Amit Kumar Pandey <137622562+ampandey-1995@users.noreply.github.com> | 2024-08-05 13:38:34 +0530 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-08-05 13:38:34 +0530 |
commit | 0886440ef0ed0ad553522b731c841b81dc36944c (patch) | |
tree | 7193ad10f47b3768f28c1dd280d2a67c0fd128c9 /llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp | |
parent | fc83e97f6ebfdd67a3eda5fbff61190d92497ce9 (diff) | |
download | llvm-0886440ef0ed0ad553522b731c841b81dc36944c.zip llvm-0886440ef0ed0ad553522b731c841b81dc36944c.tar.gz llvm-0886440ef0ed0ad553522b731c841b81dc36944c.tar.bz2 |
[Symbolizer] Support for Missing Line Numbers. (#82240)
LLVM Symbolizer attempt to symbolize addresses of optimized binaries
reports missing line numbers for some cases. It maybe due to compiler
which sometimes cannot map an instruction to line number due to
optimizations. Symbolizer should handle those cases gracefully.
Adding an option '--skip-line-zero' to symbolizer so as to report the
nearest non-zero line number.
---------
Co-authored-by: Amit Pandey <amit.pandey@amd.com>
Diffstat (limited to 'llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp')
-rw-r--r-- | llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp b/llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp index 6d7953f..3e41a85 100644 --- a/llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp +++ b/llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp @@ -490,6 +490,7 @@ int llvm_symbolizer_main(int argc, char **argv, const llvm::ToolContext &) { } else { Opts.PathStyle = DILineInfoSpecifier::FileLineInfoKind::AbsoluteFilePath; } + Opts.SkipLineZero = Args.hasArg(OPT_skip_line_zero); Opts.DebugFileDirectory = Args.getAllArgValues(OPT_debug_file_directory_EQ); Opts.DefaultArch = Args.getLastArgValue(OPT_default_arch_EQ).str(); Opts.Demangle = Args.hasFlag(OPT_demangle, OPT_no_demangle, !IsAddr2Line); |