A plan for 3.8/4.0... (insert drumroll here)
Alan Grimes
alangrimes at starpower.net
Sat Apr 3 08:57:19 UTC 2004
Jimmie Houchin wrote:
> >>>>Since many machines already and, apparently, many more will be
> using AMD64, I don't see any reason to put any special effort into the
> Itanic [sic]. Whatever is done for other platforms will automagicly
> work. GCC will compile code that uses "int64" on any platform wheather
> it be the 64 bit G5 or my dual athlon...
> <<<<
> I do think it would be nice if Squeak was at least 64bit clean even if
> a "true" 64bit port didn't advantage significantly. However I would be
> pleased if it did boost performance.
> I can't compile Squeak on my machine without dropping down into a
> special 32bit environment for explicit 32bit compiles.
From hacking on the interpreter for the last week (it's now 3:43 AM), I
can tell you that the culprit is the fact that Squeak uses 32-bit *int*
values as pointers.
I _THINK_ there is a relatively trivial way to solve this.
1. The macros at the top of interp.c will need to be changed to
something like:
#define longAt (foo) (char*)(foo+imageBase)
and then somewhere else a global "imageBase" will need to be created and
accurately reflect the current value of the array containing the image
offset. The rest of the code should run correctly with (possibly) a few
minor exceptions that should be easy to fix...
As for me, I've spent the day and night trying to debug a problem I
introduced into the garbage collector.
So far I've been trying to debug it on the binary level... Just now I
tried to put my entire base image into itself via InterpreterSimulator.
I followed the instructions in the class coment and got a message not
understood error from Bitmap, I fixed it by the following change in
interpreter simulator:
---------------------------
sqGrowMemory: oldLimit By: delta
memory _ memory class new: (delta + memory size) withAll: memory.
^ memory size * 4
----------------------------------------
But this fails too, stack dump sent seperately, I think...
More information about the Squeak-dev
mailing list
|