x86 update
Stephen Weeks
MLton@sourcelight.com
Tue, 17 Oct 2000 12:35:22 -0700 (PDT)
> The other question I wanted to ask was whether or not there have been any
> important changes to the GC since 20001004? I was going to add Suresh's
> suggestion to put some frameLayout information into the code-stream. This
> would require changes to gc.c, gc.h, c-codegen.fun and x86-codegen.fun.
There have been no runtime changes since 20001004.
> My current idea is to simply put an integer before each label which
> corresponds to the index into the frameLayouts array. That will incur one
> extra level of indirection than the C-backend, but it should be better
> than the hashtable lookup that's currently being used. I could avoid that
> level of indirection by putting the framesize and a pointer to the
> frameOffsets array before the label, but that would mean either
> duplicating data in the frameLayouts array or modifying the invariant
> function in gc.c to not walk through the frameLayouts array. I'm strongly
> leaning towards the first option, because it means minor changes to
> gc.{c,h} (basically, removing the hashing and adding in the indirection
> lookup). Also, in order to put the addresses of the frameOffsets in the
> assembly files, we would need to extern all of the frameOffsets; not
> really a problem, but it would add more to the namespace.
I'm happy with option 1.