patch-2.4.19 linux-2.4.19/include/asm-mips64/branch.h
Next file: linux-2.4.19/include/asm-mips64/bugs.h
Previous file: linux-2.4.19/include/asm-mips64/bootinfo.h
Back to the patch index
Back to the overall index
- Lines: 41
- Date:
Fri Aug 2 17:39:45 2002
- Orig file:
linux-2.4.18/include/asm-mips64/branch.h
- Orig date:
Sun Sep 9 10:43:02 2001
diff -urN linux-2.4.18/include/asm-mips64/branch.h linux-2.4.19/include/asm-mips64/branch.h
@@ -3,20 +3,29 @@
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*
- * Branch and jump emulation.
- *
- * Copyright (C) 1996, 1997, 1998, 1999 by Ralf Baechle
+ * Copyright (C) 1996, 1997, 1998, 2001 by Ralf Baechle
*/
+#ifndef _ASM_BRANCH_H
+#define _ASM_BRANCH_H
+
#include <asm/ptrace.h>
-extern inline int delay_slot(struct pt_regs *regs)
+static inline int delay_slot(struct pt_regs *regs)
{
return regs->cp0_cause & CAUSEF_BD;
}
+static inline unsigned long exception_epc(struct pt_regs *regs)
+{
+ if (!delay_slot(regs))
+ return regs->cp0_epc;
+
+ return regs->cp0_epc + 4;
+}
+
extern int __compute_return_epc(struct pt_regs *regs);
-extern inline int compute_return_epc(struct pt_regs *regs)
+static inline int compute_return_epc(struct pt_regs *regs)
{
if (!delay_slot(regs)) {
regs->cp0_epc += 4;
@@ -25,3 +34,5 @@
return __compute_return_epc(regs);
}
+
+#endif /* _ASM_BRANCH_H */
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)