am cbe55724: am 7957529d: Merge "Clean up UnwindCurrent.cpp\'s use of ucontext.h."

* commit 'cbe55724c8211c9c06362cebff0a262197dbc351':
  Clean up UnwindCurrent.cpp's use of ucontext.h.
This commit is contained in:
Christopher Ferris 2014-01-31 16:41:13 +00:00 committed by Android Git Automerger
commit 6334485f16
1 changed files with 2 additions and 21 deletions

View File

@ -27,26 +27,7 @@
#include "UnwindCurrent.h"
#include "UnwindMap.h"
// Define the ucontext_t structures needed for each supported arch.
#if defined(__arm__)
// The current version of the <signal.h> doesn't define ucontext_t.
#include <asm/sigcontext.h> // Ensure 'struct sigcontext' is defined.
// Machine context at the time a signal was raised.
typedef struct ucontext {
uint32_t uc_flags;
struct ucontext* uc_link;
stack_t uc_stack;
struct sigcontext uc_mcontext;
uint32_t uc_sigmask;
} ucontext_t;
#elif defined(__i386__)
#include <asm/sigcontext.h>
#include <asm/ucontext.h>
typedef struct ucontext ucontext_t;
#elif !defined(__mips__) && !defined(__aarch64__)
#error Unsupported architecture.
#endif
#include <ucontext.h>
//-------------------------------------------------------------------------
// UnwindCurrent functions.
@ -158,7 +139,7 @@ void UnwindCurrent::ExtractContext(void* sigcontext) {
context->regs[13] = uc->uc_mcontext.arm_sp;
context->regs[14] = uc->uc_mcontext.arm_lr;
context->regs[15] = uc->uc_mcontext.arm_pc;
#elif defined(__mips__) || defined(__i386__)
#else
context->uc_mcontext = uc->uc_mcontext;
#endif
}