summaryrefslogtreecommitdiffstats
path: root/libunwindstack/Android.bp
diff options
context:
space:
mode:
authorChristopher Ferris <cferris@google.com>2017-11-28 19:14:54 -0800
committerChristopher Ferris <cferris@google.com>2017-11-29 16:10:08 -0800
commitc3d79f7c0749a40d523b36807b8d7525cdb90654 (patch)
tree5258b70a35e2d76b7c9eebad3b37ce5c94e88e88 /libunwindstack/Android.bp
parentf819c1d94b732afca3738ba948c377b8bd1aa762 (diff)
downloadsystem_core-c3d79f7c0749a40d523b36807b8d7525cdb90654.tar.gz
system_core-c3d79f7c0749a40d523b36807b8d7525cdb90654.tar.bz2
system_core-c3d79f7c0749a40d523b36807b8d7525cdb90654.zip
Fix incorrect usage of relative pcs.
When stepping, it's necessary to use both the unaltered relative pc and the adjusted relative pc. If the adjusted pc is not used, the wrong unwind information can be used. Added new offline unit tests that take real data and verifies that it unwinds properly. Fix a bug in the map code that would not properly parse map data for a 64 bit process when done in a 32 bit process. Fix bug in eh_frame processing that didn't adjust the pc correctly. Fix unit tests related to the pc adjustment. Bug: 69475565 Test: Passes libbacktrace/libunwindstack unit tests. Test: Run debuggerd -b on processes on a hikey. Change-Id: Ic501a1c4549c5f61d2742a7105c42a960f2c892b
Diffstat (limited to 'libunwindstack/Android.bp')
-rw-r--r--libunwindstack/Android.bp3
1 files changed, 3 insertions, 0 deletions
diff --git a/libunwindstack/Android.bp b/libunwindstack/Android.bp
index 40364fe40..75aa427f5 100644
--- a/libunwindstack/Android.bp
+++ b/libunwindstack/Android.bp
@@ -130,6 +130,7 @@ cc_test {
"tests/RegsStepIfSignalHandlerTest.cpp",
"tests/RegsTest.cpp",
"tests/SymbolsTest.cpp",
+ "tests/UnwindOfflineTest.cpp",
"tests/UnwindTest.cpp",
"tests/UnwinderTest.cpp",
],
@@ -153,6 +154,8 @@ cc_test {
data: [
"tests/files/elf32.xz",
"tests/files/elf64.xz",
+ "tests/files/offline/straddle_arm32/*",
+ "tests/files/offline/straddle_arm64/*",
],
}