From 14d23b710b8baac1cdebf1b15efcc4c9b8e2ed31 Mon Sep 17 00:00:00 2001 From: "danno@chromium.org" Date: Fri, 27 Jan 2012 08:59:42 +0000 Subject: [PATCH] MIPS: Add signal context definitions for use with Android. As with Arm, the kernel defines this stuff, but bionic lib does not. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9298003 Patch from Paul Lind . git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10525 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- src/platform-linux.cc | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/src/platform-linux.cc b/src/platform-linux.cc index 6f64f2d..b8751fa 100644 --- a/src/platform-linux.cc +++ b/src/platform-linux.cc @@ -944,6 +944,37 @@ typedef struct ucontext { } ucontext_t; enum ArmRegisters {R15 = 15, R13 = 13, R11 = 11}; +#elif !defined(__GLIBC__) && defined(__mips__) + struct sigcontext { + unsigned int regmask; + unsigned int status; + unsigned long long pc; + unsigned long long gregs[32]; + unsigned long long fpregs[32]; + unsigned int acx; + unsigned int fpc_csr; + unsigned int fpc_eir; + unsigned int used_math; + unsigned int dsp; + unsigned long long mdhi; + unsigned long long mdlo; + unsigned long hi1; + unsigned long lo1; + unsigned long hi2; + unsigned long lo2; + unsigned long hi3; + unsigned long lo3; + }; + typedef uint32_t __sigset_t; + typedef struct sigcontext mcontext_t; + typedef struct ucontext { + uint32_t uc_flags; + struct ucontext* uc_link; + stack_t uc_stack; + mcontext_t uc_mcontext; + __sigset_t uc_sigmask; + } ucontext_t; + #endif -- 2.7.4