Loading...
1/* SPDX-License-Identifier: GPL-2.0 */
2#include <generated/user_constants.h>
3
4#define PT_OFFSET(r) ((r) * sizeof(long))
5
6#define PT_SYSCALL_NR(regs) ((regs)[HOST_ORIG_AX])
7#define PT_SYSCALL_NR_OFFSET PT_OFFSET(HOST_ORIG_AX)
8
9#define PT_SYSCALL_RET_OFFSET PT_OFFSET(HOST_AX)
10
11#define REGS_IP_INDEX HOST_IP
12#define REGS_SP_INDEX HOST_SP
13
14#ifdef __i386__
15#define FP_SIZE ((HOST_FPX_SIZE > HOST_FP_SIZE) ? HOST_FPX_SIZE : HOST_FP_SIZE)
16#else
17#define FP_SIZE HOST_FP_SIZE
18
19/*
20 * x86_64 FC3 doesn't define this in /usr/include/linux/ptrace.h even though
21 * it's defined in the kernel's include/linux/ptrace.h. Additionally, use the
22 * 2.4 name and value for 2.4 host compatibility.
23 */
24#ifndef PTRACE_OLDSETOPTIONS
25#define PTRACE_OLDSETOPTIONS 21
26#endif
27
28#endif
1/* SPDX-License-Identifier: GPL-2.0 */
2#include <generated/user_constants.h>
3
4#define PT_OFFSET(r) ((r) * sizeof(long))
5
6#define PT_SYSCALL_NR(regs) ((regs)[HOST_ORIG_AX])
7#define PT_SYSCALL_NR_OFFSET PT_OFFSET(HOST_ORIG_AX)
8
9#define PT_SYSCALL_RET_OFFSET PT_OFFSET(HOST_AX)
10
11#define REGS_IP_INDEX HOST_IP
12#define REGS_SP_INDEX HOST_SP
13
14/*
15 * glibc before 2.27 does not include PTRACE_SYSEMU_SINGLESTEP in its enum,
16 * ensure we have a definition by (re-)defining it here.
17 */
18#ifndef PTRACE_SYSEMU_SINGLESTEP
19#define PTRACE_SYSEMU_SINGLESTEP 32
20#endif