7288501a660ce2616539e8a963185d2f3c679729 |
|
15-Feb-2016 |
Yabin Cui <yabinc@google.com> |
simpleperf: report symbols of native libraries in apk file. Changes included: 1. provide interface in read_apk.h to read build id and symbols. 2. report symbols of native libraries in apk file. 3. refactor code in read_elf.cpp and read_apk.cpp. 4. add verbose log. 5. add -o report_file_name option for report command. 6. add corresponding unit tests. Bug: 26962895 Change-Id: I0d5398996e0c29dba4a6f5226692b758ca096bbd (cherry picked from commit b1a885b014540a2f7798b5a35ea0f0ec150d93ee)
/system/extras/simpleperf/dso.cpp
|
66dd09e8e2407082ce93bf0784de641298131912 |
|
04-Dec-2015 |
Elliott Hughes <enh@google.com> |
Track rename from base/ to android-base/. Change-Id: Ic15d4778c7accd1382de0b440a437aba2cf67016
/system/extras/simpleperf/dso.cpp
|
547c60e4dd29c5788d5948ad348acf33a55d6ed6 |
|
13-Oct-2015 |
Yabin Cui <yabinc@google.com> |
Simpleperf: fix some unknown symbols for report result. Using debug shared libraries in /usr/lib/debug on linux host. Match ip addresses with symbols by symbols' virtual addresses instead of file offsets in elf file. Because symbols' file offsets in debug shared libraries are different from those in original shared libraries. Fix overlapped maps. Bug: 24716851 Change-Id: I9cb64958c4de5c7a6c77c3febc5f689cf2df650f
/system/extras/simpleperf/dso.cpp
|
8a52e97bfd6e2c59ef48fedb277168a7bfbeec46 |
|
01-Oct-2015 |
Yabin Cui <yabinc@google.com> |
Simpleperf: warn if it can't read kernel symbols addresses. And a little format adjustment. Bug: 24404256 Change-Id: Ie8dcd37138a693df18101d415e6e3243f4963582
/system/extras/simpleperf/dso.cpp
|
3c8c21345478816dd0c70c096090b564c91bd9d2 |
|
14-Aug-2015 |
Yabin Cui <yabinc@google.com> |
Simpleperf: support dwarf callgraph in report command. Use libbacktrace for stack unwinding. Bug: 22229391 Change-Id: Iab35cdb52936c65c4728e23423ded83050f1db76
/system/extras/simpleperf/dso.cpp
|
cc2e59e2478d330c89eaceda0dcc1f05ee32fbf8 |
|
21-Aug-2015 |
Yabin Cui <yabinc@google.com> |
Simpleperf: use OneTimeFreeAllocator to allocate symbol names. simpleperf report takes a lot of time mallocing and freeing memory. This change reduces the time to free memory. Before this change: $sudo simpleperf stat simpleperf report Performance counter statistics: 3,258,481,203 cpu-cycles # 2.290946 GHz (80%) 4,147,660,154 instructions # 0.785619 cycles per instruction (79%) Total test time: 1.422330 seconds. After this change: $sudo simpleperf stat simpleperf report Performance counter statistics: 1,699,221,386 cpu-cycles # 2.994754 GHz (79%) 2,739,945,156 instructions # 0.620166 cycles per instruction (81%) Total test time: 0.567399 seconds. This change also fix a bug in record_file_test.cpp. Bug: 23387541 Change-Id: I59fc86ca54a6c09bd08eec8ada931ccff88d3102
/system/extras/simpleperf/dso.cpp
|
c84856093e8bf4350d30fc521dc0f1c800c5270b |
|
21-Aug-2015 |
Yabin Cui <yabinc@google.com> |
Simpleperf: refactor dso. Having DsoEntry and DsoFactory confuses me which part code should belong to. This change merges the two into class Dso and makes things clear. It is also a preparation for performance optimization in Dso. Bug: 23387541 Change-Id: I41e773406a7f1582a11a18859df252ce8ea3acfa
/system/extras/simpleperf/dso.cpp
|
b10a8fb990f71351558ed07b84b57ad5cafe993a |
|
19-Aug-2015 |
Yabin Cui <yabinc@google.com> |
Simpleperf: demangle symbols only when necessary. Before this change: $sudo simpleperf record -a sleep 1 $sudo simpleperf stat simpleperf report Total test time: 4.088779 seconds. After this change: $sudo simpleperf record -a sleep 1 $sudo simpleperf stat simpleperf report Total test time: 1.226267 seconds. Change-Id: Ifc811f432ac69f770eeb5814e4983f6f19dbc909
/system/extras/simpleperf/dso.cpp
|
04c70a62b68c1a0c0f79392f335463a7ee044ba6 |
|
04-Aug-2015 |
Yabin Cui <yabinc@google.com> |
Simpleperf: don't check for empty build id. Change-Id: I670ba4fa32aa764e49022abacd83ef1fdcfa7d0d
/system/extras/simpleperf/dso.cpp
|
ba50c4bba1c3ea7e98a475a3d2ae2e6c24ee81f2 |
|
21-Jul-2015 |
Yabin Cui <yabinc@google.com> |
Simpleperf: load symbols from dso file only when necessary. Bug: 22630113 Change-Id: I12bb24ec02ba3ddb94bcb2a26ae2d6e7b445ed4d
/system/extras/simpleperf/dso.cpp
|
39d3caeb60a913276a2bbaa35f6a28dc3284eb52 |
|
14-Jul-2015 |
Yabin Cui <yabinc@google.com> |
Simpleperf: support --vmlinux option in report command. Bug: 22179177 Change-Id: I633da55c6bfcb106d69de9bda6b44bce24ffca8e
/system/extras/simpleperf/dso.cpp
|
638c558339b7f1ae0ed95f64bcf7dbc5b238ed83 |
|
02-Jul-2015 |
Yabin Cui <yabinc@google.com> |
Simpleperf: check build id in report command. 1. refactor BuildId type. 2. check build id before parsing symbols in report command. Bug: 22179177 Change-Id: Iefc797a88d4a168e109db786105120c8d6914369
/system/extras/simpleperf/dso.cpp
|
9fd3cc1048a3d0338df4a48760dfd655560992a1 |
|
26-Jun-2015 |
Yabin Cui <yabinc@google.com> |
Simpleperf: support build on mac. Bug: 19483574 Change-Id: I6c28541944bc0a4e6fc07d7ea5a8fb5f71890510
/system/extras/simpleperf/dso.cpp
|
2c17e0db003baeb044bf3e13175f5d00c414c3fc |
|
11-Jun-2015 |
Yabin Cui <yabinc@google.com> |
Simpleperf: parse prefixed symbol of linker. Bug: 19483574 Change-Id: I2597d4a91fd9a6cfc5c15c8b637dc4ba5213ee56
/system/extras/simpleperf/dso.cpp
|
b378355f34b2b585eaf2be262bcd9baae9f3d36a |
|
11-Jun-2015 |
Yabin Cui <yabinc@google.com> |
Simpleperf: improve symbol parsing. Support c++ symbol demangling, and add option to disable it. Add option to set symfs dir, so it can report on host. Add label symbols, add add symbol length fixing for it. Add two hacks about arm elf symbol parsing. Bug: 19483574 Change-Id: I300d6c007c8634db382d0a50627b9cde1502df89
/system/extras/simpleperf/dso.cpp
|
ec12ed9010128483993a87d68edc02d3a89d56cf |
|
08-Jun-2015 |
Yabin Cui <yabinc@google.com> |
Simpleperf: support symbol parsing in report command. Also fix the storage of ProcessEntry. Bug: 19483574 Change-Id: I2182a804f6ecbd28e7aa3c1a38a6f19b86f583c9
/system/extras/simpleperf/dso.cpp
|