mirror of
https://git.suyu.dev/suyu/breakpad.git
synced 2026-01-07 15:08:27 +01:00
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
This commit is contained in:
parent
63919583ba
commit
0b6cc95246
21 changed files with 148960 additions and 777 deletions
|
|
@ -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
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue