platform_system_core/libunwindstack
Christopher Ferris 5afddb0637 Remove Memory::ReadField.
In almost all cases, it is faster to read the entire structure rather
than do multiple reads using ReadField. The only case where it would be
slower is if doing a remote unwind and ptrace is the only way to read. In
all other cases, it's a single system call. In the ptrace call, it will be
multiple calls. Given that it is unusual to be forced to use ptrace,
it's better to avoid it.

It also reduces the code complexity to do a single read, and avoids
issues where the code forgets to read the field it needs.

Test: Unit tests pass on host and target.
Change-Id: I7b3875b2c85d0d88115b1776e1be28521dc0b932
2018-07-12 12:45:31 -07:00
..
include/unwindstack Remove Memory::ReadField. 2018-07-12 12:45:31 -07:00
tests Remove Memory::ReadField. 2018-07-12 12:45:31 -07:00
tools Fix handling of load bias values. 2018-06-11 18:53:55 -07:00
.clang-format Use the 2 space clang format for libunwindstack. 2017-03-21 10:41:45 -07:00
Android.bp Fix handling of load bias values. 2018-06-11 18:53:55 -07:00
ArmExidx.cpp Fix handling of load bias values. 2018-06-11 18:53:55 -07:00
ArmExidx.h Fix handling of load bias values. 2018-06-11 18:53:55 -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 Fix wrong mov instruction size. 2018-01-25 11:44:19 -08:00
AsmGetRegsX86_64.S Add full support for initing registers. 2017-07-11 12:15:54 -07:00
Check.h Add error propagation into Unwinder/Elf objects. 2018-01-24 17:50:46 -08:00
DexFile.cpp Remove dependency on -no_art variant 2018-02-07 15:19:22 -08:00
DexFile.h Load dex files from ART-specific data structure. 2018-02-02 15:03:00 -08:00
DexFiles.cpp Adjust DEX file reading to follow layout changes in ART. 2018-02-16 14:54:49 +00:00
DwarfCfa.cpp Fix handling of load bias values. 2018-06-11 18:53:55 -07:00
DwarfCfa.h Fix handling of load bias values. 2018-06-11 18:53:55 -07:00
DwarfDebugFrame.h Refactor the DwarfSection classes. 2018-06-27 14:52:21 -07:00
DwarfEhFrame.h Refactor the DwarfSection classes. 2018-06-27 14:52:21 -07:00
DwarfEhFrameWithHdr.cpp Refactor the DwarfSection classes. 2018-06-27 14:52:21 -07:00
DwarfEhFrameWithHdr.h Refactor the DwarfSection classes. 2018-06-27 14:52:21 -07:00
DwarfEncoding.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 Implement new DEX PC lookup scheme. 2018-02-13 16:45:38 -08:00
DwarfOp.h Implement new DEX PC lookup scheme. 2018-02-13 16:45:38 -08:00
DwarfSection.cpp Refactor the DwarfSection classes. 2018-06-27 14:52:21 -07:00
Elf.cpp Fix handling of load bias values. 2018-06-11 18:53:55 -07:00
ElfInterface.cpp Remove Memory::ReadField. 2018-07-12 12:45:31 -07:00
ElfInterfaceArm.cpp Remove Memory::ReadField. 2018-07-12 12:45:31 -07:00
ElfInterfaceArm.h Remove Memory::ReadField. 2018-07-12 12:45:31 -07:00
JitDebug.cpp Load dex files from ART-specific data structure. 2018-02-02 15:03:00 -08:00
LocalUnwinder.cpp Add a specialized LocalUnwinder object. 2018-05-23 20:02:30 -07:00
Log.cpp Make the library usable as a library. 2017-07-14 12:20:23 -07:00
MapInfo.cpp Modify elf cache to handle elf_offsets properly. 2018-02-16 14:52:38 -08:00
Maps.cpp Add a specialized LocalUnwinder object. 2018-05-23 20:02:30 -07:00
Memory.cpp Add a MemoryOfflineBuffer object. 2018-04-03 18:37:52 -07:00
OWNERS Add OWNERS. 2017-12-07 13:30:03 -08:00
Regs.cpp Expose per arch headers. 2018-02-08 19:29:08 -08:00
RegsArm.cpp libunwindstack: add Regs::Clone. 2018-04-20 13:23:20 -07:00
RegsArm64.cpp libunwindstack: add Regs::Clone. 2018-04-20 13:23:20 -07:00
RegsInfo.h Implement new DEX PC lookup scheme. 2018-02-13 16:45:38 -08:00
RegsMips.cpp libunwindstack: add Regs::Clone. 2018-04-20 13:23:20 -07:00
RegsMips64.cpp libunwindstack: add Regs::Clone. 2018-04-20 13:23:20 -07:00
RegsX86.cpp libunwindstack: add Regs::Clone. 2018-04-20 13:23:20 -07:00
RegsX86_64.cpp libunwindstack: add Regs::Clone. 2018-04-20 13:23:20 -07:00
Symbols.cpp Fix handling of load bias values. 2018-06-11 18:53:55 -07:00
Symbols.h Fix handling of load bias values. 2018-06-11 18:53:55 -07:00
Unwinder.cpp Fix bug when doing signal handler lookup. 2018-05-17 18:58:42 -07:00