0.8.12.7: Merge package locks, AKA "what can go wrong with a 3783 line patch?"
[sbcl.git] / src / runtime / mips-arch.c
index a65a381..b2c927e 100644 (file)
@@ -1,7 +1,5 @@
 /*
 
- $Header$
-
  This code was written as part of the CMU Common Lisp project at
  Carnegie Mellon University, and has been placed in the public domain.
 
@@ -106,10 +104,18 @@ emulate_branch(os_context_t *context, unsigned long inst)
 void arch_skip_instruction(os_context_t *context)
 {
     /* Skip the offending instruction */
-    if (os_context_bd_cause(context))
+    if (os_context_bd_cause(context)) {
+       /* Currently, we never get here, because Linux' support for
+           bd_cause seems not terribly solid (c.f os_context_bd_cause
+           in mips-linux-os.c).  If a port to Irix comes along, this
+           code will be executed, because presumably Irix' support is
+           better (it can hardly be worse).  We lose() to remind the
+           porter to review this code.  -- CSR, 2002-09-06 */
+       lose("bd_cause branch taken; review code for new OS?\n");
         *os_context_pc_addr(context) = 
            emulate_branch(context, 
                           *(unsigned long *) *os_context_pc_addr(context));
+    }
     else
         *os_context_pc_addr(context) += 4;