fedora core 6 1.2949 + vserver 2.2.0
[linux-2.6.git] / include / asm-arm / ptrace.h
index 162c456..5a8ef78 100644 (file)
 #ifndef __ASM_ARM_PTRACE_H
 #define __ASM_ARM_PTRACE_H
 
-#include <linux/config.h>
 
 #define PTRACE_GETREGS         12
 #define PTRACE_SETREGS         13
 #define PTRACE_GETFPREGS       14
 #define PTRACE_SETFPREGS       15
 
+#define PTRACE_GETWMMXREGS     18
+#define PTRACE_SETWMMXREGS     19
+
 #define PTRACE_OLDSETOPTIONS   21
 
+#define PTRACE_GET_THREAD_AREA 22
+
+#define PTRACE_SET_SYSCALL     23
+
+/* PTRACE_SYSCALL is 24 */
+
+#define PTRACE_GETCRUNCHREGS   25
+#define PTRACE_SETCRUNCHREGS   26
+
 /*
  * PSR bits
  */
 
 #ifndef __ASSEMBLY__
 
-/* this struct defines the way the registers are stored on the
-   stack during a system call. */
-
+/*
+ * This struct defines the way the registers are stored on the
+ * stack during a system call.  Note that sizeof(struct pt_regs)
+ * has to be a multiple of 8.
+ */
 struct pt_regs {
        long uregs[18];
 };
@@ -131,12 +144,15 @@ static inline int valid_user_regs(struct pt_regs *regs)
 #define instruction_pointer(regs) \
        (pc_pointer((regs)->ARM_pc))
 
-#ifdef __KERNEL__
-extern void show_regs(struct pt_regs *);
+#ifdef CONFIG_SMP
+extern unsigned long profile_pc(struct pt_regs *regs);
+#else
+#define profile_pc(regs) instruction_pointer(regs)
+#endif
 
-#define predicate(x)   (x & 0xf0000000)
+#ifdef __KERNEL__
+#define predicate(x)           ((x) & 0xf0000000)
 #define PREDICATE_ALWAYS       0xe0000000
-
 #endif
 
 #endif /* __ASSEMBLY__ */