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

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

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

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

~ [ 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.