ptrace.h 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. /*
  2. * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com)
  3. *
  4. * This program is free software; you can redistribute it and/or modify
  5. * it under the terms of the GNU General Public License version 2 as
  6. * published by the Free Software Foundation.
  7. *
  8. * Amit Bhor, Sameer Dhavale: Codito Technologies 2004
  9. */
  10. #ifndef _UAPI__ASM_ARC_PTRACE_H
  11. #define _UAPI__ASM_ARC_PTRACE_H
  12. #ifndef __ASSEMBLY__
  13. /*
  14. * Userspace ABI: Register state needed by
  15. * -ptrace (gdbserver)
  16. * -sigcontext (SA_SIGNINFO signal frame)
  17. *
  18. * This is to decouple pt_regs from user-space ABI, to be able to change it
  19. * w/o affecting the ABI.
  20. * Although the layout (initial padding) is similar to pt_regs to have some
  21. * optimizations when copying pt_regs to/from user_regs_struct.
  22. *
  23. * Also, sigcontext only care about the scratch regs as that is what we really
  24. * save/restore for signal handling.
  25. */
  26. struct user_regs_struct {
  27. struct {
  28. long pad;
  29. long bta, lp_start, lp_end, lp_count;
  30. long status32, ret, blink, fp, gp;
  31. long r12, r11, r10, r9, r8, r7, r6, r5, r4, r3, r2, r1, r0;
  32. long sp;
  33. } scratch;
  34. struct {
  35. long pad;
  36. long r25, r24, r23, r22, r21, r20;
  37. long r19, r18, r17, r16, r15, r14, r13;
  38. } callee;
  39. long efa; /* break pt addr, for break points in delay slots */
  40. long stop_pc; /* give dbg stop_pc directly after checking orig_r8 */
  41. };
  42. #endif /* !__ASSEMBLY__ */
  43. #endif /* _UAPI__ASM_ARC_PTRACE_H */