GNU Linux-libre 5.4.274-gnu1
[releases.git] / arch / csky / include / uapi / asm / ptrace.h
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 // Copyright (C) 2018 Hangzhou C-SKY Microsystems co.,ltd.
3
4 #ifndef _CSKY_PTRACE_H
5 #define _CSKY_PTRACE_H
6
7 #ifndef __ASSEMBLY__
8
9 struct pt_regs {
10         unsigned long   tls;
11         unsigned long   lr;
12         unsigned long   pc;
13         unsigned long   sr;
14         unsigned long   usp;
15
16         /*
17          * a0, a1, a2, a3:
18          * abiv1: r2, r3, r4, r5
19          * abiv2: r0, r1, r2, r3
20          */
21         unsigned long   orig_a0;
22         unsigned long   a0;
23         unsigned long   a1;
24         unsigned long   a2;
25         unsigned long   a3;
26
27         /*
28          * ABIV2: r4 ~ r13
29          * ABIV1: r6 ~ r14, r1
30          */
31         unsigned long   regs[10];
32
33 #if defined(__CSKYABIV2__)
34         /* r16 ~ r30 */
35         unsigned long   exregs[15];
36
37         unsigned long   rhi;
38         unsigned long   rlo;
39         unsigned long   dcsr;
40 #endif
41 };
42
43 struct user_fp {
44         unsigned long   vr[96];
45         unsigned long   fcr;
46         unsigned long   fesr;
47         unsigned long   fid;
48         unsigned long   reserved;
49 };
50
51 #endif /* __ASSEMBLY__ */
52 #endif /* _CSKY_PTRACE_H */