Commit | Line | Data |
---|---|---|
70e0eb8e JD |
1 | #ifndef _X86_64_PTRACE_ABI_H |
2 | #define _X86_64_PTRACE_ABI_H | |
3 | ||
4 | #if defined(__ASSEMBLY__) || defined(__FRAME_OFFSETS) | |
5 | #define R15 0 | |
6 | #define R14 8 | |
7 | #define R13 16 | |
8 | #define R12 24 | |
9 | #define RBP 32 | |
10 | #define RBX 40 | |
11 | /* arguments: interrupts/non tracing syscalls only save upto here*/ | |
12 | #define R11 48 | |
13 | #define R10 56 | |
14 | #define R9 64 | |
15 | #define R8 72 | |
16 | #define RAX 80 | |
17 | #define RCX 88 | |
18 | #define RDX 96 | |
19 | #define RSI 104 | |
20 | #define RDI 112 | |
21 | #define ORIG_RAX 120 /* = ERROR */ | |
22 | /* end of arguments */ | |
23 | /* cpu exception frame or undefined in case of fast syscall. */ | |
24 | #define RIP 128 | |
25 | #define CS 136 | |
26 | #define EFLAGS 144 | |
27 | #define RSP 152 | |
28 | #define SS 160 | |
29 | #define ARGOFFSET R11 | |
30 | #endif /* __ASSEMBLY__ */ | |
31 | ||
32 | /* top of stack page */ | |
33 | #define FRAME_SIZE 168 | |
34 | ||
35 | #define PTRACE_OLDSETOPTIONS 21 | |
36 | ||
37 | /* Arbitrarily choose the same ptrace numbers as used by the Sparc code. */ | |
38 | #define PTRACE_GETREGS 12 | |
39 | #define PTRACE_SETREGS 13 | |
40 | #define PTRACE_GETFPREGS 14 | |
41 | #define PTRACE_SETFPREGS 15 | |
42 | #define PTRACE_GETFPXREGS 18 | |
43 | #define PTRACE_SETFPXREGS 19 | |
44 | ||
45 | /* only useful for access 32bit programs */ | |
46 | #define PTRACE_GET_THREAD_AREA 25 | |
47 | #define PTRACE_SET_THREAD_AREA 26 | |
48 | ||
49 | #define PTRACE_ARCH_PRCTL 30 /* arch_prctl for child */ | |
50 | ||
51 | #endif |