Upstream version 9.38.198.0
[platform/framework/web/crosswalk.git] / src / native_client / src / trusted / service_runtime / arch / arm / nacl_signal_arm.h
1 /*
2  * Copyright 2010 The Native Client Authors. All rights reserved.
3  * Use of this source code is governed by a BSD-style license that can be
4  * found in the LICENSE file.
5  */
6
7 /*
8  * NaCl Signal Context
9  */
10
11 #ifndef __NATIVE_CLIENT_SERVICE_RUNTIME_ARCH_ARM_NACL_SIGNAL_ARM_H__
12 #define __NATIVE_CLIENT_SERVICE_RUNTIME_ARCH_ARM_NACL_SIGNAL_ARM_H__ 1
13
14 #include "native_client/src/include/portability.h"
15
16 /*
17  * Architecture specific context object.  Register order matches that
18  * found in src/trusted/debug_stub/abi.cc, which allows us to use an
19  * abi context (GDB ordered context), and a signal context interchangably.
20  * In addition, we use common names for the stack and program counter to
21  * allow functions which use them to avoid conditional compilation.
22  */
23 struct NaClSignalContext {
24   uint32_t r0;
25   uint32_t r1;
26   uint32_t r2;
27   uint32_t r3;
28   uint32_t r4;
29   uint32_t r5;
30   uint32_t r6;
31   uint32_t r7;
32   uint32_t r8;
33   uint32_t r9;
34   uint32_t r10;
35   uint32_t r11;
36   uint32_t r12;
37   uint32_t stack_ptr;
38   uint32_t lr;
39   uint32_t prog_ctr;
40   uint32_t cpsr;
41 };
42
43
44 #endif /* __NATIVE_CLIENT_SERVICE_RUNTIME_ARCH_ARM_NACL_SIGNAL_ARM_H__ */