patch-2.4.19 linux-2.4.19/include/asm-mips/ptrace.h
Next file: linux-2.4.19/include/asm-mips/r4kcache.h
Previous file: linux-2.4.19/include/asm-mips/processor.h
Back to the patch index
Back to the overall index
- Lines: 77
- Date:
Fri Aug 2 17:39:45 2002
- Orig file:
linux-2.4.18/include/asm-mips/ptrace.h
- Orig date:
Mon Jul 2 13:56:40 2001
diff -urN linux-2.4.18/include/asm-mips/ptrace.h linux-2.4.19/include/asm-mips/ptrace.h
@@ -12,7 +12,6 @@
#define _ASM_PTRACE_H
#include <asm/isadep.h>
-#include <linux/types.h>
/* 0 - 31 are integer registers, 32 - 63 are fp registers. */
#define FPR_BASE 32
@@ -24,7 +23,7 @@
#define FPC_CSR 69
#define FPC_EIR 70
-#ifndef _LANGUAGE_ASSEMBLY
+#ifndef __ASSEMBLY__
/*
* This struct defines the way the registers are stored on the stack during a
* system call/exception. As usual the registers k0/k1 aren't being saved.
@@ -49,7 +48,33 @@
unsigned long cp0_cause;
};
-#endif /* !(_LANGUAGE_ASSEMBLY) */
+#define __str2(x) #x
+#define __str(x) __str2(x)
+
+#define save_static_function(symbol) \
+__asm__ ( \
+ ".globl\t" #symbol "\n\t" \
+ ".align\t2\n\t" \
+ ".type\t" #symbol ", @function\n\t" \
+ ".ent\t" #symbol ", 0\n" \
+ #symbol":\n\t" \
+ ".frame\t$29, 0, $31\n\t" \
+ "sw\t$16,"__str(PT_R16)"($29)\t\t\t# save_static_function\n\t" \
+ "sw\t$17,"__str(PT_R17)"($29)\n\t" \
+ "sw\t$18,"__str(PT_R18)"($29)\n\t" \
+ "sw\t$19,"__str(PT_R19)"($29)\n\t" \
+ "sw\t$20,"__str(PT_R20)"($29)\n\t" \
+ "sw\t$21,"__str(PT_R21)"($29)\n\t" \
+ "sw\t$22,"__str(PT_R22)"($29)\n\t" \
+ "sw\t$23,"__str(PT_R23)"($29)\n\t" \
+ "sw\t$30,"__str(PT_R30)"($29)\n\t" \
+ ".end\t" #symbol "\n\t" \
+ ".size\t" #symbol",. - " #symbol)
+
+/* Used in declaration of save_static functions. */
+#define static_unused static __attribute__((unused))
+
+#endif /* !__ASSEMBLY__ */
/* Arbitrarily choose the same ptrace numbers as used by the Sparc code. */
/* #define PTRACE_GETREGS 12 */
@@ -64,13 +89,13 @@
/* options set using PTRACE_SETOPTIONS */
#define PTRACE_O_TRACESYSGOOD 0x00000001
-#ifdef _LANGUAGE_ASSEMBLY
+#ifdef __ASSEMBLY__
#include <asm/offset.h>
#endif
#ifdef __KERNEL__
-#ifndef _LANGUAGE_ASSEMBLY
+#ifndef __ASSEMBLY__
/*
* Does the process account for user or for system time?
*/
@@ -79,7 +104,7 @@
#define instruction_pointer(regs) ((regs)->cp0_epc)
extern void show_regs(struct pt_regs *);
-#endif /* !(_LANGUAGE_ASSEMBLY) */
+#endif /* !__ASSEMBLY__ */
#endif
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)