patch-2.3.23 linux/include/asm-arm/proc-armv/ptrace.h
Next file: linux/include/asm-arm/proc-armv/system.h
Previous file: linux/include/asm-arm/proc-armv/processor.h
Back to the patch index
Back to the overall index
- Lines: 94
- Date:
Wed Oct 20 16:29:08 1999
- Orig file:
v2.3.22/linux/include/asm-arm/proc-armv/ptrace.h
- Orig date:
Thu Jun 17 01:11:35 1999
diff -u --recursive --new-file v2.3.22/linux/include/asm-arm/proc-armv/ptrace.h linux/include/asm-arm/proc-armv/ptrace.h
@@ -1,12 +1,33 @@
/*
* linux/include/asm-arm/proc-armv/ptrace.h
*
- * Copyright (C) 1996 Russell King
+ * Copyright (C) 1996-1999 Russell King
*/
-
#ifndef __ASM_PROC_PTRACE_H
#define __ASM_PROC_PTRACE_H
+#define USR26_MODE 0x00
+#define FIQ26_MODE 0x01
+#define IRQ26_MODE 0x02
+#define SVC26_MODE 0x03
+#define USR_MODE 0x10
+#define FIQ_MODE 0x11
+#define IRQ_MODE 0x12
+#define SVC_MODE 0x13
+#define ABT_MODE 0x17
+#define UND_MODE 0x1b
+#define SYSTEM_MODE 0x1f
+#define MODE_MASK 0x1f
+#define F_BIT 0x40
+#define I_BIT 0x80
+#define CC_V_BIT (1 << 28)
+#define CC_C_BIT (1 << 29)
+#define CC_Z_BIT (1 << 30)
+#define CC_N_BIT (1 << 31)
+#define PCMASK 0
+
+#ifndef __ASSEMBLY__
+
/* this struct defines the way the registers are stored on the
stack during a system call. */
@@ -31,37 +52,12 @@
#define ARM_r2 uregs[2]
#define ARM_r1 uregs[1]
#define ARM_r0 uregs[0]
-#define ARM_ORIG_r0 uregs[17] /* -1 */
-
-#define USR26_MODE 0x00
-#define FIQ26_MODE 0x01
-#define IRQ26_MODE 0x02
-#define SVC26_MODE 0x03
-#define USR_MODE 0x10
-#define FIQ_MODE 0x11
-#define IRQ_MODE 0x12
-#define SVC_MODE 0x13
-#define ABT_MODE 0x17
-#define UND_MODE 0x1b
-#define SYSTEM_MODE 0x1f
-#define MODE_MASK 0x1f
-#define F_BIT 0x40
-#define I_BIT 0x80
-#define CC_V_BIT (1 << 28)
-#define CC_C_BIT (1 << 29)
-#define CC_Z_BIT (1 << 30)
-#define CC_N_BIT (1 << 31)
+#define ARM_ORIG_r0 uregs[17]
#ifdef __KERNEL__
-#if 0 /* GCC/egcs should be able to optimise this, IMHO */
-#define user_mode(regs) \
- ((((regs)->ARM_cpsr & MODE_MASK) == USR_MODE) || \
- (((regs)->ARM_cpsr & MODE_MASK) == USR26_MODE))
-#else
#define user_mode(regs) \
(((regs)->ARM_cpsr & 0xf) == 0)
-#endif
#define processor_mode(regs) \
((regs)->ARM_cpsr & MODE_MASK)
@@ -75,9 +71,6 @@
#define condition_codes(regs) \
((regs)->ARM_cpsr & (CC_V_BIT|CC_C_BIT|CC_Z_BIT|CC_N_BIT))
-#define instruction_pointer(regs) ((regs)->ARM_pc)
-#define pc_pointer(v) (v)
-
/* Are the current registers suitable for user mode?
* (used to maintain security in signal handlers)
*/
@@ -96,6 +89,8 @@
}
#endif /* __KERNEL__ */
+
+#endif /* __ASSEMBLY__ */
#endif
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)