linux/arch/x86/include/asm/ptrace-abi.h
<<
>>
Prefs
   1#ifndef _ASM_X86_PTRACE_ABI_H
   2#define _ASM_X86_PTRACE_ABI_H
   3
   4#ifdef __i386__
   5
   6#define EBX 0
   7#define ECX 1
   8#define EDX 2
   9#define ESI 3
  10#define EDI 4
  11#define EBP 5
  12#define EAX 6
  13#define DS 7
  14#define ES 8
  15#define FS 9
  16#define GS 10
  17#define ORIG_EAX 11
  18#define EIP 12
  19#define CS  13
  20#define EFL 14
  21#define UESP 15
  22#define SS   16
  23#define FRAME_SIZE 17
  24
  25#else /* __i386__ */
  26
  27#if defined(__ASSEMBLY__) || defined(__FRAME_OFFSETS)
  28#define R15 0
  29#define R14 8
  30#define R13 16
  31#define R12 24
  32#define RBP 32
  33#define RBX 40
  34/* arguments: interrupts/non tracing syscalls only save upto here*/
  35#define R11 48
  36#define R10 56
  37#define R9 64
  38#define R8 72
  39#define RAX 80
  40#define RCX 88
  41#define RDX 96
  42#define RSI 104
  43#define RDI 112
  44#define ORIG_RAX 120       /* = ERROR */
  45/* end of arguments */
  46/* cpu exception frame or undefined in case of fast syscall. */
  47#define RIP 128
  48#define CS 136
  49#define EFLAGS 144
  50#define RSP 152
  51#define SS 160
  52#define ARGOFFSET R11
  53#endif /* __ASSEMBLY__ */
  54
  55/* top of stack page */
  56#define FRAME_SIZE 168
  57
  58#endif /* !__i386__ */
  59
  60/* Arbitrarily choose the same ptrace numbers as used by the Sparc code. */
  61#define PTRACE_GETREGS            12
  62#define PTRACE_SETREGS            13
  63#define PTRACE_GETFPREGS          14
  64#define PTRACE_SETFPREGS          15
  65#define PTRACE_GETFPXREGS         18
  66#define PTRACE_SETFPXREGS         19
  67
  68#define PTRACE_OLDSETOPTIONS      21
  69
  70/* only useful for access 32bit programs / kernels */
  71#define PTRACE_GET_THREAD_AREA    25
  72#define PTRACE_SET_THREAD_AREA    26
  73
  74#ifdef __x86_64__
  75# define PTRACE_ARCH_PRCTL        30
  76#endif
  77
  78#define PTRACE_SYSEMU             31
  79#define PTRACE_SYSEMU_SINGLESTEP  32
  80
  81#define PTRACE_SINGLEBLOCK      33      /* resume execution until next branch */
  82
  83#ifndef __ASSEMBLY__
  84#include <linux/types.h>
  85#endif
  86
  87#endif /* _ASM_X86_PTRACE_ABI_H */
  88
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.