platform_system_core/libunwindstack
Christopher Ferris 150db124f3 Add ability to read jit gdb data.
Changes:
- New JitDebug class to handle all of the jit gdb interface.
- Add unit tests for all, along with new offline test using debug data.
- Add new Memory type called MemoryOfflineParts that has multiple
  MemoryOffline objects to support the offline test.
- Update the tools to use the JitDebug object.
- Modify libbacktrace to use the JitDebug, but only looking in libart.so
  and libartd.so.
- Change the Format32Bits to Is32Bit since it's more accurate and I use
  it in a different context where original name didn't make sense.
- Add a new function to find global variables in an elf file
  (GetGlobalVariable).
- Add a new function to determine if a pc is valid for this elf (IsValidPc).

Bug: 68396769

Test: Ran new unit tests. Added new offline test that uses jit debug data.
Test: Ran art test that generates jit data and verified a crash unwinds
Test: through the jit data.
Change-Id: I6e7ee2f5bab2242028a06feece156dff21c0a974
2018-01-12 11:18:42 -08:00
..
include/unwindstack Add ability to read jit gdb data. 2018-01-12 11:18:42 -08:00
tests Add ability to read jit gdb data. 2018-01-12 11:18:42 -08:00
tools Add ability to read jit gdb data. 2018-01-12 11:18:42 -08:00
.clang-format Use the 2 space clang format for libunwindstack. 2017-03-21 10:41:45 -07:00
Android.bp Add ability to read jit gdb data. 2018-01-12 11:18:42 -08:00
ArmExidx.cpp Split arch data into separate files. 2017-12-06 16:01:40 -08:00
ArmExidx.h Make the library usable as a library. 2017-07-14 12:20:23 -07:00
AsmGetRegsMips.S Add libunwindstack support for Mips and Mips64 2017-12-11 15:44:40 +01:00
AsmGetRegsMips64.S Add libunwindstack support for Mips and Mips64 2017-12-11 15:44:40 +01:00
AsmGetRegsX86.S Add full support for initing registers. 2017-07-11 12:15:54 -07:00
AsmGetRegsX86_64.S Add full support for initing registers. 2017-07-11 12:15:54 -07:00
Check.h Make the library usable as a library. 2017-07-14 12:20:23 -07:00
DwarfCfa.cpp Make the library usable as a library. 2017-07-14 12:20:23 -07:00
DwarfCfa.h Make the library usable as a library. 2017-07-14 12:20:23 -07:00
DwarfDebugFrame.h Add support for only a .eh_frame. 2017-11-07 13:22:39 -08:00
DwarfEhFrame.h Fix incorrect usage of relative pcs. 2017-11-29 16:10:08 -08:00
DwarfEhFrameWithHdr.cpp Fix another nullptr dereference. 2017-11-08 11:04:48 -08:00
DwarfEhFrameWithHdr.h Add support for only a .eh_frame. 2017-11-07 13:22:39 -08:00
DwarfEncoding.h Make the library usable as a library. 2017-07-14 12:20:23 -07:00
DwarfError.h Make the library usable as a library. 2017-07-14 12:20:23 -07:00
DwarfMemory.cpp unwindstack: rename Memory::Read to ReadFully. 2017-11-15 15:38:13 -08:00
DwarfOp.cpp unwindstack: rename Memory::Read to ReadFully. 2017-11-15 15:38:13 -08:00
DwarfOp.h Make the library usable as a library. 2017-07-14 12:20:23 -07:00
DwarfSection.cpp unwindstack: rename Memory::Read to ReadFully. 2017-11-15 15:38:13 -08:00
Elf.cpp Add ability to read jit gdb data. 2018-01-12 11:18:42 -08:00
ElfInterface.cpp Add ability to read jit gdb data. 2018-01-12 11:18:42 -08:00
ElfInterfaceArm.cpp Fix issues in libunwindstack. 2017-12-15 11:17:45 -08:00
ElfInterfaceArm.h Fix issues in libunwindstack. 2017-12-15 11:17:45 -08:00
JitDebug.cpp Add ability to read jit gdb data. 2018-01-12 11:18:42 -08:00
Log.cpp Make the library usable as a library. 2017-07-14 12:20:23 -07:00
MachineArm.h Split arch data into separate files. 2017-12-06 16:01:40 -08:00
MachineArm64.h Split arch data into separate files. 2017-12-06 16:01:40 -08:00
MachineMips.h Add libunwindstack support for Mips and Mips64 2017-12-11 15:44:40 +01:00
MachineMips64.h Add libunwindstack support for Mips and Mips64 2017-12-11 15:44:40 +01:00
MachineX86.h Split arch data into separate files. 2017-12-06 16:01:40 -08:00
MachineX86_64.h Split arch data into separate files. 2017-12-06 16:01:40 -08:00
MapInfo.cpp Fix issues in libunwindstack. 2017-12-15 11:17:45 -08:00
Maps.cpp Fix issues in libunwindstack. 2017-12-15 11:17:45 -08:00
Memory.cpp Add ability to read jit gdb data. 2018-01-12 11:18:42 -08:00
OWNERS Add OWNERS. 2017-12-07 13:30:03 -08:00
Regs.cpp Add libunwindstack support for Mips and Mips64 2017-12-11 15:44:40 +01:00
RegsArm.cpp Add ability to read jit gdb data. 2018-01-12 11:18:42 -08:00
RegsArm64.cpp Split arch data into separate files. 2017-12-06 16:01:40 -08:00
RegsMips.cpp Add libunwindstack support for Mips and Mips64 2017-12-11 15:44:40 +01:00
RegsMips64.cpp Add libunwindstack support for Mips and Mips64 2017-12-11 15:44:40 +01:00
RegsX86.cpp Split arch data into separate files. 2017-12-06 16:01:40 -08:00
RegsX86_64.cpp Split arch data into separate files. 2017-12-06 16:01:40 -08:00
Symbols.cpp Add ability to read jit gdb data. 2018-01-12 11:18:42 -08:00
Symbols.h Add ability to read jit gdb data. 2018-01-12 11:18:42 -08:00
UcontextArm.h Split arch data into separate files. 2017-12-06 16:01:40 -08:00
UcontextArm64.h Split arch data into separate files. 2017-12-06 16:01:40 -08:00
UcontextMips.h Add libunwindstack support for Mips and Mips64 2017-12-11 15:44:40 +01:00
UcontextMips64.h Add libunwindstack support for Mips and Mips64 2017-12-11 15:44:40 +01:00
UcontextX86.h Split arch data into separate files. 2017-12-06 16:01:40 -08:00
UcontextX86_64.h Fix issues in libunwindstack. 2017-12-15 11:17:45 -08:00
Unwinder.cpp Add ability to read jit gdb data. 2018-01-12 11:18:42 -08:00
UserArm.h Split arch data into separate files. 2017-12-06 16:01:40 -08:00
UserArm64.h Split arch data into separate files. 2017-12-06 16:01:40 -08:00
UserMips.h Add libunwindstack support for Mips and Mips64 2017-12-11 15:44:40 +01:00
UserMips64.h Add libunwindstack support for Mips and Mips64 2017-12-11 15:44:40 +01:00
UserX86.h Split arch data into separate files. 2017-12-06 16:01:40 -08:00
UserX86_64.h Split arch data into separate files. 2017-12-06 16:01:40 -08:00