History log of /system/extras/simpleperf/OfflineUnwinder.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
15933b6e39d1afbda8538a42ae206286582e54cc 23-Feb-2018 Christopher Ferris <cferris@google.com> Create maps for libunwind only if they changed.

Increases speed (unwinds per second) by 50%.

Bug: None
Test: manual - took a profile
Test: run simpleperf_unit_test.
Change-Id: I254f70a011c1b3d31bbd4e9e4bb9e85fbf2ffbdf
/system/extras/simpleperf/OfflineUnwinder.cpp
0dd988a1bf7dbe7b755b7eec6948a4935399b4d8 20-Feb-2018 Christopher Ferris <cferris@google.com> Skips symbolization.

Bug: 73558129

Test: Passes unit tests.
Change-Id: I7cbe618f622b540abf486777f0d40a18f890dbef
/system/extras/simpleperf/OfflineUnwinder.cpp
6e75e1b8f560bd3029e22aa9ac04e789e405a007 06-Feb-2018 Yabin Cui <yabinc@google.com> simpleperf: Use cross-arch unwinding.

Enables cross-arch unwinding since the new unwinder supports cross-arch
unwinding.
Also change tests accordingly.

Bug: http://b/73127000
Test: run simpleperf_unit_test.

Change-Id: I3ca3f7a81b40e9f7ea2b39b9fdc951f9e7a6acc7
/system/extras/simpleperf/OfflineUnwinder.cpp
922b874997dc1a45d7158d31f2dcc208e71719e7 31-Jan-2018 Yabin Cui <yabinc@google.com> simpleperf: fix mac build.

Bug: none
Test: none
Change-Id: Ia4e6dd0e44e19379d79a08a8555ad413ba879bf2
/system/extras/simpleperf/OfflineUnwinder.cpp
11017687d6deef1bf510d3000933351a75ddf28c 15-Dec-2017 Christopher Ferris <cferris@google.com> Change to new libbacktrace offline functions.

Changes:
- Removes references to libunwind.
- Add enabling of global Elf cache.
- Add new ApkInspector function to get the offset from an apk by name.
- When a map name contains a '!' convert back to a name and offset.
- Initialize global elf cache in OfflineUnwinder constructor.

Bug: 65682279

Test: All unit tests pass.
Change-Id: I303b4beab8270ed2097cd17d91253c321cdc97f1
/system/extras/simpleperf/OfflineUnwinder.cpp
43dabd566d38e3ea47d093fa92e2fb44452b8d1c 23-Jan-2018 Yabin Cui <yabinc@google.com> simpleperf: fix test record_cmd.post_unwind_option.

Sometimes a sample hits a pc location with no map, and results in
empty ips vector. This makes test record_cmd.post_unwind_option fail.

Bug: none
Test: run CtsSimpleperfTestCases.
Change-Id: If9ced5ee36fc6967afd2e82a11440d7410a74ea7
/system/extras/simpleperf/OfflineUnwinder.cpp
85faad981ac44e70990d7d701e142e0fa0b2bc8e 05-Jan-2018 Yabin Cui <yabinc@google.com> simpleperf: improve unwinding result report.

1. Add stack range in unwinding result.
2. Add option to omit callchains fixed by callchain joiner.

Bug: http://b/69383534
Test: manually.
Change-Id: I9672061a8972ac79c321fc5d5e63950369c63e9c
/system/extras/simpleperf/OfflineUnwinder.cpp
750b373d691df6a3818f4d025bcf3f433313ec85 19-Dec-2017 Yabin Cui <yabinc@google.com> simpleperf: improve recording unwinding results.

1. Add MAP_MISSING result type.
2. Pass --log option to the simpleperf process running in app's context,
in order to dump unwinding results when profiling android apps.

Bug: http://b/69383534
Test: run simpleperf_unit_test.
Test: run simpleperf manually.
Change-Id: I72173060a5808e5ffb7318640509cabe53395063
/system/extras/simpleperf/OfflineUnwinder.cpp
0338145e5418d73c97521c676d31c05e74e01fdd 13-Dec-2017 Yabin Cui <yabinc@google.com> simpleperf: report unwinding failures.

1. When --log debug is used, store unwinding results in
UnwindingResultRecords in perf.data.
2. Use unwinding_result_reporter.py to report unwinding results.

This is to help finding different unwinding failures.

Bug: http://b/69383534
Test: run simpleperf_unit_test.
Test: run unwinding_result_reporter.py manually.
Change-Id: I6d7f107e9758b1ec55ed35b49657bb41d47e2178
/system/extras/simpleperf/OfflineUnwinder.cpp