diff options
author | Yabin Cui <yabinc@google.com> | 2017-10-17 17:46:24 -0700 |
---|---|---|
committer | Yabin Cui <yabinc@google.com> | 2017-10-17 17:46:24 -0700 |
commit | 2c79347a019a3885245cffb12893b368adc20211 (patch) | |
tree | 3159be4a2723f1be274bea467c76531b659dfa0c /simpleperf/report_lib_interface.cpp | |
parent | 0bc040a8cbe7faf96138afab80119f2a9492fee0 (diff) | |
download | extras-2c79347a019a3885245cffb12893b368adc20211.tar.gz |
simpleperf: export symbol_len in report lib interface.
It helps to set the range of a function when annotating source code
and disassemble code.
Also add comments in simpleperf_report_lib.py to make the meaning
of the structures clear.
Bug: http://b/66914187
Test: run test.py TestReportLib.
Change-Id: I1be996df8062ddb6759e9f98e0400f3a4df7efb6
Diffstat (limited to 'simpleperf/report_lib_interface.cpp')
-rw-r--r-- | simpleperf/report_lib_interface.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/simpleperf/report_lib_interface.cpp b/simpleperf/report_lib_interface.cpp index 88bb4d7e..c7a606c9 100644 --- a/simpleperf/report_lib_interface.cpp +++ b/simpleperf/report_lib_interface.cpp @@ -59,6 +59,7 @@ struct SymbolEntry { uint64_t vaddr_in_file; const char* symbol_name; uint64_t symbol_addr; + uint64_t symbol_len; Mapping* mapping; }; @@ -304,6 +305,7 @@ SymbolEntry* ReportLib::GetSymbolOfCurrentSample() { current_symbol_.vaddr_in_file = vaddr_in_file; current_symbol_.symbol_name = symbol->DemangledName(); current_symbol_.symbol_addr = symbol->addr; + current_symbol_.symbol_len = symbol->len; current_symbol_.mapping = AddMapping(*map); update_flag_ |= UPDATE_FLAG_OF_SYMBOL; } @@ -351,6 +353,7 @@ CallChain* ReportLib::GetCallChainOfCurrentSample() { entry.symbol.vaddr_in_file = vaddr_in_file; entry.symbol.symbol_name = symbol->DemangledName(); entry.symbol.symbol_addr = symbol->addr; + entry.symbol.symbol_len = symbol->len; entry.symbol.mapping = AddMapping(*map); callchain_entries_.push_back(entry); } |