[PATCH] D12153: Support inline functions symbolization in Addr2Line symbolizer.
Alexey Samsonov via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 8 12:08:47 PDT 2015
samsonov added a comment.
I still don't like the suggested approach. Having `TrimOutputBuffer` in the parent class is confusing - it's unclear when one needs to use it, and it's added for one specific implementation detail of addr2line. To make that more generic, you can make `ReadFromSymbolizer` virtual, and make `Addr2LineProcess::ReadFromSymbolizer` just call the implementation of the base class, and afterwards adjust it (search for output_terminator_ and put a terminating '\0').
================
Comment at: lib/asan/scripts/asan_symbolize.py:171-172
@@ -160,6 +170,4 @@
+ lines.append((function_name, file_name));
except Exception:
- function_name = ''
- file_name = ''
- file_name = fix_filename(file_name)
- return ['%s in %s %s' % (addr, function_name, file_name)]
-
+ lines.append(('??', '??:?'))
+ return ['%s in %s %s' % (addr, function, fix_filename(file)) for (function, file) in lines]
----------------
ygribov wrote:
> Or rather '??:0'?
Please address
================
Comment at: lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc:277
@@ -257,2 +276,3 @@
char buffer_[kBufferSize];
- internal_snprintf(buffer_, kBufferSize, "0x%zx\n", module_offset);
+ internal_snprintf(buffer_, kBufferSize, "0x%zx\n0x%zx\n",
+ module_offset, dummy_address_);
----------------
While you're here, rename it to `buffer`, as it's a local variable.
http://reviews.llvm.org/D12153
More information about the llvm-commits
mailing list