forked from OSchip/llvm-project
Fix data symbolization with libbacktrace. Patch by Jakub Jelinek!
llvm-svn: 224308
This commit is contained in:
parent
9d1020648c
commit
1c65001e5e
|
@ -173,9 +173,9 @@ SymbolizedStack *LibbacktraceSymbolizer::SymbolizeCode(uptr addr,
|
|||
return data.first;
|
||||
}
|
||||
|
||||
bool LibbacktraceSymbolizer::SymbolizeData(DataInfo *info) {
|
||||
backtrace_syminfo((backtrace_state *)state_, info->address,
|
||||
SymbolizeDataCallback, ErrorCallback, info);
|
||||
bool LibbacktraceSymbolizer::SymbolizeData(uptr addr, DataInfo *info) {
|
||||
backtrace_syminfo((backtrace_state *)state_, addr, SymbolizeDataCallback,
|
||||
ErrorCallback, info);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -192,7 +192,7 @@ SymbolizedStack *LibbacktraceSymbolizer::SymbolizeCode(uptr addr,
|
|||
return nullptr;
|
||||
}
|
||||
|
||||
bool LibbacktraceSymbolizer::SymbolizeData(DataInfo *info) {
|
||||
bool LibbacktraceSymbolizer::SymbolizeData(uptr addr, DataInfo *info) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
|
@ -35,7 +35,7 @@ class LibbacktraceSymbolizer {
|
|||
SymbolizedStack *SymbolizeCode(uptr addr, const char *module_name,
|
||||
uptr module_offset);
|
||||
|
||||
bool SymbolizeData(DataInfo *info);
|
||||
bool SymbolizeData(uptr addr, DataInfo *info);
|
||||
|
||||
// May return NULL if demangling failed.
|
||||
static char *Demangle(const char *name, bool always_alloc = false);
|
||||
|
|
|
@ -596,7 +596,7 @@ class POSIXSymbolizer : public Symbolizer {
|
|||
// First, try to use libbacktrace symbolizer (if it's available).
|
||||
if (libbacktrace_symbolizer_ != 0) {
|
||||
mu_.CheckLocked();
|
||||
if (libbacktrace_symbolizer_->SymbolizeData(info))
|
||||
if (libbacktrace_symbolizer_->SymbolizeData(addr, info))
|
||||
return true;
|
||||
}
|
||||
const char *str = SendCommand(true, module_name, module_offset);
|
||||
|
|
Loading…
Reference in New Issue