GNU Linux-libre 5.4.274-gnu1
[releases.git] / arch / csky / abiv2 / inc / abi / elf.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2
3 #ifndef __ABI_CSKY_ELF_H
4 #define __ABI_CSKY_ELF_H
5
6 /* The member sort in array pr_reg[x] is defined by GDB. */
7 #define ELF_CORE_COPY_REGS(pr_reg, regs) do {   \
8         pr_reg[0] = regs->pc;                   \
9         pr_reg[1] = regs->a1;                   \
10         pr_reg[2] = regs->a0;                   \
11         pr_reg[3] = regs->sr;                   \
12         pr_reg[4] = regs->a2;                   \
13         pr_reg[5] = regs->a3;                   \
14         pr_reg[6] = regs->regs[0];              \
15         pr_reg[7] = regs->regs[1];              \
16         pr_reg[8] = regs->regs[2];              \
17         pr_reg[9] = regs->regs[3];              \
18         pr_reg[10] = regs->regs[4];             \
19         pr_reg[11] = regs->regs[5];             \
20         pr_reg[12] = regs->regs[6];             \
21         pr_reg[13] = regs->regs[7];             \
22         pr_reg[14] = regs->regs[8];             \
23         pr_reg[15] = regs->regs[9];             \
24         pr_reg[16] = regs->usp;                 \
25         pr_reg[17] = regs->lr;                  \
26         pr_reg[18] = regs->exregs[0];           \
27         pr_reg[19] = regs->exregs[1];           \
28         pr_reg[20] = regs->exregs[2];           \
29         pr_reg[21] = regs->exregs[3];           \
30         pr_reg[22] = regs->exregs[4];           \
31         pr_reg[23] = regs->exregs[5];           \
32         pr_reg[24] = regs->exregs[6];           \
33         pr_reg[25] = regs->exregs[7];           \
34         pr_reg[26] = regs->exregs[8];           \
35         pr_reg[27] = regs->exregs[9];           \
36         pr_reg[28] = regs->exregs[10];          \
37         pr_reg[29] = regs->exregs[11];          \
38         pr_reg[30] = regs->exregs[12];          \
39         pr_reg[31] = regs->exregs[13];          \
40         pr_reg[32] = regs->exregs[14];          \
41         pr_reg[33] = regs->tls;                 \
42 } while (0);
43 #endif /* __ABI_CSKY_ELF_H */