diff options
author | Christopher Ferris <cferris@google.com> | 2017-10-24 15:38:14 -0700 |
---|---|---|
committer | Christopher Ferris <cferris@google.com> | 2017-10-27 11:17:55 -0700 |
commit | b1b0ed2b2889d42dcf800a3bdfe734759909482d (patch) | |
tree | 655028ee6fb94d38d2569a6ef5577b9b5370c504 /compiler/optimizing/graph_visualizer.cc | |
parent | 5751dc831ffd8acb089c2aff2e2ddf18f89da975 (diff) |
Use the backtrace interface to skip java maps.
This has no effect until the new unwinder is used. When the new
unwinder is enabled this will have nearly the same behavior as the
old unwinder. The difference is that the old unwinder ignored the
minidebug information (compressed section data) completely. The new
unwinder will not ignore minidebug information in system libraries,
it will only ignore them in .oat or .odex maps.
There will be a small difference between the new and old unwinder. The
new unwinder when dumping in an ANR trace file looks like this:
native: #00 pc 0000000000069abc /system/lib64/libc.so (__epoll_pwait+8)
native: #01 pc 000000000001feb4 /system/lib64/libc.so (epoll_pwait+52)
native: #02 pc 0000000000015cec /system/lib64/libutils.so (android::Looper::pollInner(int)+144)
native: #03 pc 0000000000015bcc /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+108)
native: #04 pc 0000000000110d98 /system/lib64/libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int)+44)
at android.os.MessageQueue.nativePollOnce(Native method)
at android.os.MessageQueue.next(MessageQueue.java:325)
at android.os.Looper.loop(Looper.java:142)
at android.app.ActivityThread.main(ActivityThread.java:6569)
at java.lang.reflect.Method.invoke(Native method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:795)
The old unwinder looks like this:
native: #00 pc 0000000000069abc /system/lib64/libc.so (__epoll_pwait+8)
native: #01 pc 000000000001feb4 /system/lib64/libc.so (epoll_pwait+52)
native: #02 pc 0000000000015cec /system/lib64/libutils.so (android::Looper::p
ollInner(int)+144)
native: #03 pc 0000000000015bcc /system/lib64/libutils.so (android::Looper::p
ollOnce(int, int*, int*, void**)+108)
native: #04 pc 0000000000110d98 /system/lib64/libandroid_runtime.so (???)
native: #05 pc 00000000001d1e1c /system/framework/arm64/boot-framework.oat (J
ava_android_os_MessageQueue_nativePollOnce__JI+140)
at android.os.MessageQueue.nativePollOnce(Native method)
at android.os.MessageQueue.next(MessageQueue.java:325)
at android.os.Looper.loop(Looper.java:142)
at android.app.ActivityThread.main(ActivityThread.java:6569)
at java.lang.reflect.Method.invoke(Native method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.jav
a:438)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:795)
Test: kill -3 of android process.
Change-Id: If9d282d1a7a303c4f2af296bd98b1994b9bc2660
Diffstat (limited to 'compiler/optimizing/graph_visualizer.cc')
0 files changed, 0 insertions, 0 deletions