ptrace.h 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
  2. /*
  3. * include/asm-xtensa/ptrace.h
  4. *
  5. * This file is subject to the terms and conditions of the GNU General Public
  6. * License. See the file "COPYING" in the main directory of this archive
  7. * for more details.
  8. *
  9. * Copyright (C) 2001 - 2005 Tensilica Inc.
  10. */
  11. #ifndef _UAPI_XTENSA_PTRACE_H
  12. #define _UAPI_XTENSA_PTRACE_H
  13. #include <linux/types.h>
  14. /* Registers used by strace */
  15. #define REG_A_BASE 0x0000
  16. #define REG_AR_BASE 0x0100
  17. #define REG_PC 0x0020
  18. #define REG_PS 0x02e6
  19. #define REG_WB 0x0248
  20. #define REG_WS 0x0249
  21. #define REG_LBEG 0x0200
  22. #define REG_LEND 0x0201
  23. #define REG_LCOUNT 0x0202
  24. #define REG_SAR 0x0203
  25. #define SYSCALL_NR 0x00ff
  26. /* Other PTRACE_ values defined in <linux/ptrace.h> using values 0-9,16,17,24 */
  27. #define PTRACE_GETREGS 12
  28. #define PTRACE_SETREGS 13
  29. #define PTRACE_GETXTREGS 18
  30. #define PTRACE_SETXTREGS 19
  31. #define PTRACE_GETHBPREGS 20
  32. #define PTRACE_SETHBPREGS 21
  33. #define PTRACE_GETFDPIC 22
  34. #define PTRACE_GETFDPIC_EXEC 0
  35. #define PTRACE_GETFDPIC_INTERP 1
  36. #ifndef __ASSEMBLY__
  37. struct user_pt_regs {
  38. __u32 pc;
  39. __u32 ps;
  40. __u32 lbeg;
  41. __u32 lend;
  42. __u32 lcount;
  43. __u32 sar;
  44. __u32 windowstart;
  45. __u32 windowbase;
  46. __u32 threadptr;
  47. __u32 syscall;
  48. __u32 reserved[6 + 48];
  49. __u32 a[64];
  50. };
  51. #endif
  52. #endif /* _UAPI_XTENSA_PTRACE_H */