Annotation of Gnu-Mach/linux/src/include/asm-i386/ptrace.h, revision 1.1.1.1

1.1       root        1: #ifndef _I386_PTRACE_H
                      2: #define _I386_PTRACE_H
                      3: 
                      4: #define EBX 0
                      5: #define ECX 1
                      6: #define EDX 2
                      7: #define ESI 3
                      8: #define EDI 4
                      9: #define EBP 5
                     10: #define EAX 6
                     11: #define DS 7
                     12: #define ES 8
                     13: #define FS 9
                     14: #define GS 10
                     15: #define ORIG_EAX 11
                     16: #define EIP 12
                     17: #define CS  13
                     18: #define EFL 14
                     19: #define UESP 15
                     20: #define SS   16
                     21: 
                     22: 
                     23: /* this struct defines the way the registers are stored on the 
                     24:    stack during a system call. */
                     25: 
                     26: struct pt_regs {
                     27:        long ebx;
                     28:        long ecx;
                     29:        long edx;
                     30:        long esi;
                     31:        long edi;
                     32:        long ebp;
                     33:        long eax;
                     34:        unsigned short ds, __dsu;
                     35:        unsigned short es, __esu;
                     36:        unsigned short fs, __fsu;
                     37:        unsigned short gs, __gsu;
                     38:        long orig_eax;
                     39:        long eip;
                     40:        unsigned short cs, __csu;
                     41:        long eflags;
                     42:        long esp;
                     43:        unsigned short ss, __ssu;
                     44: };
                     45: 
                     46: /* Arbitrarily choose the same ptrace numbers as used by the Sparc code. */
                     47: #define PTRACE_GETREGS            12
                     48: #define PTRACE_SETREGS            13
                     49: #define PTRACE_GETFPREGS          14
                     50: #define PTRACE_SETFPREGS          15
                     51: 
                     52: #ifdef __KERNEL__
                     53: #define user_mode(regs) ((VM_MASK & (regs)->eflags) || (3 & (regs)->cs))
                     54: #define instruction_pointer(regs) ((regs)->eip)
                     55: extern void show_regs(struct pt_regs *);
                     56: struct task_struct;
                     57: extern void get_pt_regs_for_task(struct pt_regs *, struct task_struct *p);
                     58: #endif
                     59: 
                     60: #endif

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.