GNU Linux-libre 4.14.266-gnu1
[releases.git] / arch / cris / include / uapi / arch-v10 / arch / user.h
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 #ifndef __ASM_CRIS_ARCH_USER_H
3 #define __ASM_CRIS_ARCH_USER_H
4
5 /* User mode registers, used for core dumps. In order to keep ELF_NGREG
6    sensible we let all registers be 32 bits. The csr registers are included
7    for future use. */
8 struct user_regs_struct {
9         unsigned long r0;       /* General registers. */
10         unsigned long r1;
11         unsigned long r2;
12         unsigned long r3;
13         unsigned long r4;
14         unsigned long r5;
15         unsigned long r6;
16         unsigned long r7;
17         unsigned long r8;
18         unsigned long r9;
19         unsigned long r10;
20         unsigned long r11;
21         unsigned long r12;
22         unsigned long r13;
23         unsigned long sp;       /* Stack pointer. */
24         unsigned long pc;       /* Program counter. */
25         unsigned long p0;       /* Constant zero (only 8 bits). */
26         unsigned long vr;       /* Version register (only 8 bits). */
27         unsigned long p2;       /* Reserved. */
28         unsigned long p3;       /* Reserved. */
29         unsigned long p4;       /* Constant zero (only 16 bits). */
30         unsigned long ccr;      /* Condition code register (only 16 bits). */
31         unsigned long p6;       /* Reserved. */
32         unsigned long mof;      /* Multiply overflow register. */
33         unsigned long p8;       /* Constant zero. */
34         unsigned long ibr;      /* Not accessible. */
35         unsigned long irp;      /* Not accessible. */
36         unsigned long srp;      /* Subroutine return pointer. */
37         unsigned long bar;      /* Not accessible. */
38         unsigned long dccr;     /* Dword condition code register. */
39         unsigned long brp;      /* Not accessible. */
40         unsigned long usp;      /* User-mode stack pointer. Same as sp when 
41                                    in user mode. */
42         unsigned long csrinstr; /* Internal status registers. */
43         unsigned long csraddr;
44         unsigned long csrdata;
45 };
46
47 #endif