OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [rc203soc/] [sw/] [uClinux/] [include/] [asm-i386/] [ptrace.h] - Blame information for rev 1765

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 1633 jcastillo
#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

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.