~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

Linux Cross Reference
Linux/include/asm-mips/branch.h

Version: ~ [ 2.4.0 ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 /*
  2  * Branch and jump emulation.
  3  *
  4  * This file is subject to the terms and conditions of the GNU General Public
  5  * License.  See the file "COPYING" in the main directory of this archive
  6  * for more details.
  7  *
  8  * Copyright (C) 1996, 1997, 1998 by Ralf Baechle
  9  *
 10  * $Id: branch.h,v 1.2 1998/04/28 19:37:46 ralf Exp $
 11  */
 12 #include <asm/ptrace.h>
 13 
 14 extern inline int delay_slot(struct pt_regs *regs)
 15 {
 16         return regs->cp0_cause & CAUSEF_BD;
 17 }
 18 
 19 extern int __compute_return_epc(struct pt_regs *regs);
 20 
 21 extern inline int compute_return_epc(struct pt_regs *regs)
 22 {
 23         if (!delay_slot(regs)) {
 24                 regs->cp0_epc += 4;
 25                 return 0;
 26         }
 27 
 28         return __compute_return_epc(regs);
 29 }
 30 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.