Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
arch
arm64
include
uapi
asm
sigcontext.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2012 ARM Ltd.
3
*
4
* This program is free software; you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License version 2 as
6
* published by the Free Software Foundation.
7
*
8
* This program is distributed in the hope that it will be useful,
9
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
* GNU General Public License for more details.
12
*
13
* You should have received a copy of the GNU General Public License
14
* along with this program. If not, see <http://www.gnu.org/licenses/>.
15
*/
16
#ifndef _UAPI__ASM_SIGCONTEXT_H
17
#define _UAPI__ASM_SIGCONTEXT_H
18
19
#include <linux/types.h>
20
21
/*
22
* Signal context structure - contains all info to do with the state
23
* before the signal handler was invoked.
24
*/
25
struct
sigcontext
{
26
__u64
fault_address
;
27
/* AArch64 registers */
28
__u64
regs
[31];
29
__u64
sp
;
30
__u64
pc
;
31
__u64
pstate
;
32
/* 4K reserved for FP/SIMD state and future expansion */
33
__u8
__reserved
[4096]
__attribute__
((__aligned__(16)));
34
};
35
36
/*
37
* Header to be used at the beginning of structures extending the user
38
* context. Such structures must be placed after the rt_sigframe on the stack
39
* and be 16-byte aligned. The last structure must be a dummy one with the
40
* magic and size set to 0.
41
*/
42
struct
_aarch64_ctx
{
43
__u32
magic
;
44
__u32
size
;
45
};
46
47
#define FPSIMD_MAGIC 0x46508001
48
49
struct
fpsimd_context
{
50
struct
_aarch64_ctx
head
;
51
__u32
fpsr
;
52
__u32
fpcr
;
53
__uint128_t
vregs
[32];
54
};
55
56
57
#endif
/* _UAPI__ASM_SIGCONTEXT_H */
Generated on Thu Jan 10 2013 12:50:30 for Linux Kernel by
1.8.2