diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2007-10-23 16:37:24 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2007-10-23 16:37:24 -0400 |
commit | 8fc37f2c474b8ea61186fd77193324845432447b (patch) | |
tree | 94b2f70db5c2291cd5fcf24e168cf985162fb835 /include/asm-x86/ptrace_64.h | |
parent | 5ca3b0f1958a9f96b7d596e54145722e8d4631b9 (diff) |
x86: merge ptrace_32/64.h
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'include/asm-x86/ptrace_64.h')
-rw-r--r-- | include/asm-x86/ptrace_64.h | 80 |
1 files changed, 0 insertions, 80 deletions
diff --git a/include/asm-x86/ptrace_64.h b/include/asm-x86/ptrace_64.h deleted file mode 100644 index 7bfe61e1b705..000000000000 --- a/include/asm-x86/ptrace_64.h +++ /dev/null | |||
@@ -1,80 +0,0 @@ | |||
1 | #ifndef _X86_64_PTRACE_H | ||
2 | #define _X86_64_PTRACE_H | ||
3 | |||
4 | #include <linux/compiler.h> /* For __user */ | ||
5 | #include <asm/ptrace-abi.h> | ||
6 | |||
7 | #ifndef __ASSEMBLY__ | ||
8 | |||
9 | struct pt_regs { | ||
10 | unsigned long r15; | ||
11 | unsigned long r14; | ||
12 | unsigned long r13; | ||
13 | unsigned long r12; | ||
14 | unsigned long rbp; | ||
15 | unsigned long rbx; | ||
16 | /* arguments: non interrupts/non tracing syscalls only save upto here*/ | ||
17 | unsigned long r11; | ||
18 | unsigned long r10; | ||
19 | unsigned long r9; | ||
20 | unsigned long r8; | ||
21 | unsigned long rax; | ||
22 | unsigned long rcx; | ||
23 | unsigned long rdx; | ||
24 | unsigned long rsi; | ||
25 | unsigned long rdi; | ||
26 | unsigned long orig_rax; | ||
27 | /* end of arguments */ | ||
28 | /* cpu exception frame or undefined */ | ||
29 | unsigned long rip; | ||
30 | unsigned long cs; | ||
31 | unsigned long eflags; | ||
32 | unsigned long rsp; | ||
33 | unsigned long ss; | ||
34 | /* top of stack page */ | ||
35 | }; | ||
36 | |||
37 | #endif | ||
38 | |||
39 | #if defined(__KERNEL__) && !defined(__ASSEMBLY__) | ||
40 | #define user_mode(regs) (!!((regs)->cs & 3)) | ||
41 | #define user_mode_vm(regs) user_mode(regs) | ||
42 | #define instruction_pointer(regs) ((regs)->rip) | ||
43 | #define frame_pointer(regs) ((regs)->rbp) | ||
44 | #define stack_pointer(regs) ((regs)->rsp) | ||
45 | #define regs_return_value(regs) ((regs)->rax) | ||
46 | |||
47 | extern unsigned long profile_pc(struct pt_regs *regs); | ||
48 | void signal_fault(struct pt_regs *regs, void __user *frame, char *where); | ||
49 | |||
50 | struct task_struct; | ||
51 | |||
52 | extern unsigned long | ||
53 | convert_rip_to_linear(struct task_struct *child, struct pt_regs *regs); | ||
54 | |||
55 | enum { | ||
56 | EF_CF = 0x00000001, | ||
57 | EF_PF = 0x00000004, | ||
58 | EF_AF = 0x00000010, | ||
59 | EF_ZF = 0x00000040, | ||
60 | EF_SF = 0x00000080, | ||
61 | EF_TF = 0x00000100, | ||
62 | EF_IE = 0x00000200, | ||
63 | EF_DF = 0x00000400, | ||
64 | EF_OF = 0x00000800, | ||
65 | EF_IOPL = 0x00003000, | ||
66 | EF_IOPL_RING0 = 0x00000000, | ||
67 | EF_IOPL_RING1 = 0x00001000, | ||
68 | EF_IOPL_RING2 = 0x00002000, | ||
69 | EF_NT = 0x00004000, /* nested task */ | ||
70 | EF_RF = 0x00010000, /* resume */ | ||
71 | EF_VM = 0x00020000, /* virtual mode */ | ||
72 | EF_AC = 0x00040000, /* alignment */ | ||
73 | EF_VIF = 0x00080000, /* virtual interrupt */ | ||
74 | EF_VIP = 0x00100000, /* virtual interrupt pending */ | ||
75 | EF_ID = 0x00200000, /* id */ | ||
76 | }; | ||
77 | |||
78 | #endif | ||
79 | |||
80 | #endif | ||