Update of /cvsroot/sbcl/sbcl/src/runtime
In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv15682/src/runtime
Modified Files:
sparc-arch.c
Log Message:
1.0.1.4:
Fix Sparc build with gcc 4.1. (Patch from Rex Dieter).
Index: sparc-arch.c
===================================================================
RCS file: /cvsroot/sbcl/sbcl/src/runtime/sparc-arch.c,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -d -r1.18 -r1.19
--- sparc-arch.c 2 Nov 2006 17:18:37 -0000 1.18
+++ sparc-arch.c 29 Dec 2006 00:32:16 -0000 1.19
@@ -86,8 +86,12 @@
void arch_skip_instruction(os_context_t *context)
{
- ((char *) *os_context_pc_addr(context)) = ((char *) *os_context_npc_addr(context));
- ((char *) *os_context_npc_addr(context)) += 4;
+ *os_context_pc_addr(context) = *os_context_npc_addr(context);
+ /* Note that we're doing integer arithmetic here, not pointer. So
+ * the value that the return value of os_context_npc_addr() points
+ * to will be incremented by 4, not 16.
+ */
+ *os_context_npc_addr(context) += 4;
}
unsigned char *arch_internal_error_arguments(os_context_t *context)
|