diff options
author | primiano@chromium.org <primiano@chromium.org> | 2014-12-02 15:31:25 +0000 |
---|---|---|
committer | primiano@chromium.org <primiano@chromium.org> | 2014-12-02 15:31:25 +0000 |
commit | 0b6cc95246754410ed315491642f909f37685a99 (patch) | |
tree | d7e64482198f9e9df5348eb8c97f27bd638e0e8a /src/google_breakpad/processor | |
parent | Surfacing the process create time in google_breakpad::ProcessState (diff) | |
download | breakpad-0b6cc95246754410ed315491642f909f37685a99.tar.xz |
Microdumps: support aarch64 and lib mapping from APK
- Filter modules by prot flags (only +x) not extensions. It wouldn't
otherwise catch the case of Chrome mapping the library from the
apk (which is mapped r-x but doesn't end in .so).
- Use compile-time detection of target arch, in order to cope with
multilib OSes, where uname() doesn't reflect the run-time arch.
- Add OS information and CPU arch / count.
- Add support for aarch64.
- Add tests and stackwalk expectations for aarch64.
- Fix a potential overflow bug in the processor.
- Rebaseline the tests using smaller symbols.
- Fix microdump_writer_unittest.cc on 32-bit host.
BUG=chromium:410294
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1407 4c0a9323-5329-0410-9bdc-e9ce6186880e
Diffstat (limited to 'src/google_breakpad/processor')
-rw-r--r-- | src/google_breakpad/processor/microdump.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/google_breakpad/processor/microdump.h b/src/google_breakpad/processor/microdump.h index 3676bd67..abdaecb1 100644 --- a/src/google_breakpad/processor/microdump.h +++ b/src/google_breakpad/processor/microdump.h @@ -46,6 +46,7 @@ #include "common/using_std_string.h" #include "google_breakpad/processor/dump_context.h" #include "google_breakpad/processor/memory_region.h" +#include "google_breakpad/processor/system_info.h" #include "processor/basic_code_modules.h" namespace google_breakpad { @@ -64,6 +65,7 @@ class MicrodumpModules : public BasicCodeModules { class MicrodumpContext : public DumpContext { public: virtual void SetContextARM(MDRawContextARM* arm); + virtual void SetContextARM64(MDRawContextARM64* arm64); }; // This class provides access to microdump memory regions. @@ -109,11 +111,13 @@ class Microdump { DumpContext* GetContext() { return context_.get(); } MicrodumpMemoryRegion* GetMemory() { return stack_region_.get(); } MicrodumpModules* GetModules() { return modules_.get(); } + SystemInfo* GetSystemInfo() { return system_info_.get(); } private: scoped_ptr<MicrodumpContext> context_; scoped_ptr<MicrodumpMemoryRegion> stack_region_; scoped_ptr<MicrodumpModules> modules_; + scoped_ptr<SystemInfo> system_info_; }; } // namespace google_breakpad |