Breakpad/ARM

From MozillaWiki
Jump to: navigation, search

This page summarizes the changes necessary to port Breakpad to Linux/ARM and WinCE/ARM.

Data structures

Breakpad defines architecture-specific data structures that get stored in minidump files. ARM-specific data structures will need to be defined to store register state. See the x86 data structures, or the {amd64,ppc,ppc64,sparc} files in that same directory.

Build tools

At build time, a tool is run to read debug symbols from the platform-native format and produce a textual format. There is likely some porting work that will need to be done here:

Client-side

The client-side code consists of code that writes out a minidump file, and code that submits it via HTTP.

Server-side

The Breakpad processor code needs updating to handle the new ARM structures In addition, the processor needs an implementation of stack walking given the register state, stack memory, and debug info. See the x86 stack walker, or the other CPU implementations.