[self-interest] Re: i386 Port: Status

Jecel Assumpcao Jr. jecel at merlintec.com
Sun Jan 9 14:50:11 UTC 2000


> The Self VM links now :-)

Great! Do you still get all those warnings about BoundedListTemplate? I would
expect so, since templates in C++ are a little strange.

I had found this comment in vm/templates/link.make

# Rule that links Self is in Dependencies (created by makeFileList).
# ${AOUT}: *.o
#       ${LD} -o $@ *.o ${PATCHED_OBJS} ${LIBS}
#
# files: *.o

which I assume means the bin/shell/makeFilesLists script...

> It crashes before main() in a constructor for a global
> variable. Here's the stack trace:
> 
> > #0  abort () at ../sysdeps/generic/abort.c:50
> > #1  0x819486e in SaveNVRet () at ../../../vm/src/i386/runtime/registerLocator_i386.c:64
> > #2  0x820f44a in __Q29Trapdoors7ElementPv8Location (this=0x84ff698, d=0x8194864, t=R0) at ../../../vm/src/i386/zone/trapdoors_i386.h:21
> > #3  0x8195ff4 in _GLOBAL_.I.trapdoor_bytes__9Trapdoors () at ../../../vm/src/i386/zone/trapdoors_i386.c:11
> > #4  0x82059e8 in __do_global_ctors_aux ()
> > #5  0x804bc3a in _init ()

Hmmm... I don't know what these "trapdoors" and "registerLocator" are all about.
The Sparc versions of these seem to be empty implementations, so it probably
is some PPC specific thing. Of course, it might just make your step 10 (walking
the stack) easier.

Note that if you complete all your planned steps and get to the point where you
might want to read in a Snapshot file, this is the first "little endian"
implementation of Self and you might have a few complications with this.

Good luck!
-- Jecel



More information about the Self-interest mailing list