--- Begin Message ---
| From: Thomas Bushnell BSG <[EMAIL PROTECTED]>
| Date: Thu, 27 Oct 2005 11:53:31 -0700
|
| Hi Aubrey, I've taken over maintenance of scm for Debian, and I'd
| really like to get it into the next Debian stable release. The
| problem traditionally has been making it work on the weirder
| architectures that Debian supports...
|
| At the moment, it doesn't build on ia64, s390, arm, and m68k...
|
| The failure on m68k seems to be a problem with system header files,
| and may not be anything akimbo in scm at all.
|
| The ia64 problem is a failure in testing continuations when scmlit
| runs its tests; it reports "ERROR: segment violation 11". The
| compile also reports lots of "cast to pointer from integer of
| different size" warnings. I believe scm has never built
| successfully on Debian ia64. (See bugs.debian.org/335980)
A couple years ago Martin Ward made an ia64 machine available to me
and I fixed some SCM problems on it, but didn't get past the
continuations. Appended is the relevant correspondence.
To fix it one must understand how the ia64 stack works.
http://dmalloc.com/forums/topic_show.pl?tid=104 says the stack must be
16-byte aligned. Off the top of my head I don't see why that would
make a difference in copying the stack when marking from the stack
works.
Do you know an ia64 expert?
-----------------
From: Aubrey Jaffer <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
In-reply-to: <[EMAIL PROTECTED]> (message from
Martin Ward on Mon, 8 Sep 2003 18:48:56 +0100)
Subject: Re: SCM on ia64
Date: Wed, 24 Sep 2003 11:19:19 -0400 (EDT)
| From: Martin Ward <[EMAIL PROTECTED]>
| Date: Mon, 8 Sep 2003 18:48:56 +0100
|
| De Montfort University has a snazzy new machine with 64 bit
| processors (ia54).
|
| Adding:
|
| #define SHORT_INT
|
| to scmfig.h doesn't seem to work: I still get lots of "cast to
| pointer from integer of different size" warnings and the executable
| does not work:
With current development sources and
#define CHEAP_CONTINUATIONS
The executable made by "make scmlit" works. "make scmlit" and "make
checklit" will fail the TEST-CONT in r4rstest.scm because it doesn't
have full continuations. If you remove (test-cont) from the Makefile
"checklit:" target, the "make checklit" should exit successfully.
The other builds I tried fail in GC. So the stack, register, or
memory marking is probably responsible. I will continue working on
that.
-----------------
From: Aubrey Jaffer <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
In-reply-to: <[EMAIL PROTECTED]> (message from
Aubrey Jaffer on Wed, 24 Sep 2003 11:19:19 -0400 (EDT))
Subject: Re: SCM on ia64
Date: Thu, 9 Oct 2003 00:36:06 -0400 (EDT)
| From: Aubrey Jaffer <[EMAIL PROTECTED]>
| Date: Wed, 24 Sep 2003 11:19:19 -0400 (EDT)
|
| The executable made by "make scmlit" works. "make scmlit" and
| "make checklit" will fail the TEST-CONT in r4rstest.scm because it
| doesn't have full continuations. If you remove (test-cont) from
| the Makefile "checklit:" target, the "make checklit" should exit
| successfully.
|
| The other builds I tried fail in GC. So the stack, register, or
| memory marking is probably responsible. I will continue working on
| that.
Compiling with "-O2" was responsible for most of the problems. With
it removed, "make scm" produces a working executable. Bignums and
dynamic-linking work. Dump and non-escape continuations do not.
Dump code is taken from Emacs unexec. If there is a working ia64
unexec, then it can be ported to SCM.
Getting continuations to work requires finding an architecture
description file or reading through the ia64 specs.
-----------------
From: <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
In-reply-to: <[EMAIL PROTECTED]> (message from
Martin Ward on Mon, 13 Oct 2003 16:54:20 +0100)
Subject: Re: SCM on ia64
Date: Mon, 13 Oct 2003 22:38:47 -0400 (EDT)
| From: Martin Ward <[EMAIL PROTECTED]>
| Date: Mon, 13 Oct 2003 16:54:20 +0100
|
| On Thursday 09 Oct 2003 5:36 am, you wrote:
| > Compiling with "-O2" was responsible for most of the problems. With
| > it removed, "make scm" produces a working executable. Bignums and
| > dynamic-linking work. Dump and non-escape continuations do not.
|
| Where can I download the working version from?
"build.scm" in the development version is updated:
http://swissnet.ai.mit.edu/ftpdir/users/jaffer/scm.zip
| Do I need to remove -O2 from every compilation, or just certain files?
My experience with over-aggressive GCC optimizations is that most
files need to shed -O2, and the ones that don't can be responsible for
rare malfunctions.
-----------------
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
--- End Message ---