diff options
Diffstat (limited to 'libc/include/sys/procfs.h')
-rw-r--r-- | libc/include/sys/procfs.h | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/libc/include/sys/procfs.h b/libc/include/sys/procfs.h index 75a1e986e..a082e97e0 100644 --- a/libc/include/sys/procfs.h +++ b/libc/include/sys/procfs.h @@ -26,16 +26,24 @@ * SUCH DAMAGE. */ -#ifndef _SYS_PROCFS_H_ -#define _SYS_PROCFS_H_ +#pragma once #include <sys/cdefs.h> +#include <sys/ptrace.h> #include <sys/ucontext.h> __BEGIN_DECLS +#if defined(__arm__) +#define ELF_NGREG (sizeof(struct user_regs) / sizeof(elf_greg_t)) +#elif defined(__aarch64__) +#define ELF_NGREG (sizeof(struct user_pt_regs) / sizeof(elf_greg_t)) +#else +#define ELF_NGREG (sizeof(struct user_regs_struct) / sizeof(elf_greg_t)) +#endif + typedef unsigned long elf_greg_t; -typedef elf_greg_t elf_gregset_t[NGREG]; +typedef elf_greg_t elf_gregset_t[ELF_NGREG]; typedef fpregset_t elf_fpregset_t; @@ -58,5 +66,3 @@ struct elf_siginfo { #define ELF_PRARGSZ 80 __END_DECLS - -#endif |