The attached patch disables the apply-hack on sparc64. The assembly
stub used in apply-hack.sparc64.S appears to generate random
crashes. Tested on Linux. I was not able to get it to run on OpenBSD
yet.
>From c91618185cf8ed8c94e3557de8fb2bcae2ccccfa Mon Sep 17 00:00:00 2001
From: felix <fe...@call-with-current-continuation.org>
Date: Thu, 10 Nov 2011 11:14:00 +0100
Subject: [PATCH] disable apply-hack on sparc64

---
 apply-hack.sparc64.S  |   62 -------------------------------------------------
 config-arch.sh        |    1 -
 defaults.make         |    6 ----
 distribution/manifest |    1 -
 4 files changed, 0 insertions(+), 70 deletions(-)
 delete mode 100644 apply-hack.sparc64.S

diff --git a/apply-hack.sparc64.S b/apply-hack.sparc64.S
deleted file mode 100644
index f1ee959..0000000
--- a/apply-hack.sparc64.S
+++ /dev/null
@@ -1,62 +0,0 @@
-/* apply-hack.ppc.s
-;
-; Copyright (c) 2008-2011, Peter Bex
-; All rights reserved.
-;
-; Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following
-; conditions are met:
-;
-;   Redistributions of source code must retain the above copyright notice, this list of conditions and the following
-;     disclaimer. 
-;   Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following
-;     disclaimer in the documentation and/or other materials provided with the distribution. 
-;   Neither the name of the author nor the names of its contributors may be used to endorse or promote
-;     products derived from this software without specific prior written permission. 
-;
-; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS
-; OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
-; AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR
-; CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
-; SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-; THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-; OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-; POSSIBILITY OF SUCH DAMAGE.
-*/
-
-	.text
-
-	.globl	_C_do_apply_hack
-	.align	8
-	.equ	BIAS, 2047
-	
-_C_do_apply_hack:
-	mov	%o1, %g4      /* buf */
-	sllx	%o2, 3, %o2   /* o2 <- count, in bytes */
-	subcc	%o2, 6*8, %o2 /* 6 params are in registers */
-	bg	l0
-	mov	%o0, %g1      /* proc (delay slot) */
-	udivx	%o2, -2, %o2  /* Offset in quads -> offset in words from l2 */
-	setx	l2, %o3, %o1
-	jmp	%o1+%o2
-	nop
-	/* Rest args on stack if > 6 args */
-l0:	sub	%sp, %o2, %sp /* Alloc space for additional args */
-	clr	%o1
-	add	%sp, BIAS+176, %o5
-	add	%g4, 6*8, %o3 /* 7th arg and up */
-l1:	ldx	[%o3], %o4
-	stx	%o4, [%o5+%o1]
-	add	%o1, 8, %o1
-	cmp	%o1, %o2
-	bl	l1
-	add	%o3, 8, %o3   /* (delay slot) */
-l2:	ldx	[%g4+40], %o5
-	ldx	[%g4+32], %o4
-	ldx	[%g4+24], %o3
-	ldx	[%g4+16], %o2
-	ldx	[%g4+8], %o1
-	ldx	[%g4+0], %o0
-	
-	jmp	%g1
-	nop
diff --git a/config-arch.sh b/config-arch.sh
index e1f8fec..7651837 100644
--- a/config-arch.sh
+++ b/config-arch.sh
@@ -33,7 +33,6 @@ case "`uname -m`" in
 	    Darwin) echo "ppc.darwin";;
 	    *) echo "ppc.sysv";;
 	esac;;
-    sparc64) echo "sparc64";;
     amd64|x86_64) echo "x86-64";;
     *) ;;
 esac
diff --git a/defaults.make b/defaults.make
index b1f971e..9de2b4c 100644
--- a/defaults.make
+++ b/defaults.make
@@ -31,12 +31,6 @@ BINARYVERSION = 6
 STACKDIRECTION ?= 1
 CROSS_CHICKEN ?= 0
 
-ifeq ($(ARCH),x86-64)
-NURSERY ?= (256*1024)
-else
-NURSERY ?= (128*1024)
-endif
-
 # directories
 
 SEP ?= /
diff --git a/distribution/manifest b/distribution/manifest
index f92ee21..ba7001a 100644
--- a/distribution/manifest
+++ b/distribution/manifest
@@ -205,7 +205,6 @@ apply-hack.x86.S
 apply-hack.x86-64.S
 apply-hack.ppc.darwin.S
 apply-hack.ppc.sysv.S
-apply-hack.sparc64.S
 chicken.pdf
 Makefile
 Makefile.linux
-- 
1.7.6.msysgit.0

_______________________________________________
Chicken-hackers mailing list
Chicken-hackers@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-hackers

Reply via email to