Newsgroups: comp.sys.amiga.programmer
Path: utzoo!utgpu!watserv1!maytag!maytag!himacdon
From: himacdon@maytag.uwaterloo.ca (Hamish Macdonald)
Subject: Re: AmigaGCC stack hogging
In-Reply-To: bojsen@moria.UUCP's message of 17 Jan 91 23:46:57 GMT
Message-ID: <1991Jan21.203200.18189@maytag.waterloo.edu>
Followup-To: comp.sys.amiga.programmer
Sender: daemon@maytag.waterloo.edu (Admin)
Organization: University of Waterloo, Waterloo, Ontario
References: <1882f287.ARN1979@moria.UUCP> <1991Jan14.212254.9779@csun.edu>
	<1991Jan15.154204.10833@maytag.waterloo.edu>
	<1991Jan16.014951.5670@csun.edu> <188a0681.ARN1bc1@moria.UUCP>
Date: Mon, 21 Jan 91 20:32:00 GMT
Lines: 32

>>>>> In article <188a0681.ARN1bc1@moria.UUCP>, bojsen@moria.UUCP (Per Bojsen) writes:

Per> [...]  So, GNU Emacs will not be properly programmed for the
Per> Amiga before it uses full 32 bit addressing (why use bit 31 for
Per> anything but an address?).  Does anyone know how difficult this
Per> would be to implement?

Emacs uses the top 6-8 bits of a word for Lisp type and garbage
collection marking bits.

I don't think the changes are incredibly difficult.  Just very
time-consuming.  The Emacs lisp object is currently defined to be a
union of an integer and a number of structures.  There is an _awful_
lot of code in Gnu Emacs which depends on being able to pass a lisp
object around as an integer.

One way to change this would be to get rid of the integer/structure
union and make the lisp object a 64 bit structure.  Everything would
then have to be changed to support passing the larger structure
around.

Another approach suggested is to make the lisp object a 32 bit pointer
to the actual contents of the object (i.e. a 64 bit structure
containing the type and garbage collection bits and a pointer/integer
field.).  This requires an extra indirection to access the object.

These changes are going to affect the performance of Emacs, since it
would use more memory and would be slower.

--
--------------------------------------------------------------------
himacdon@maytag.uwaterloo.ca                 watmath!maytag!himacdon
