Win32 port - the GC...
   
    Stephen Weeks
     
    MLton@sourcelight.com
       
    Fri, 1 Feb 2002 09:05:41 -0800
    
    
  
> I'm working on completing the Win32-port of the 20010806
> release of MLton now. 
Cool.  I am actually just starting to look into turning our latest
internal version into a WinNT/2000 cross-compiler.  So it looks like I
will port some/all of your stuff to our internal version and it will
make it to the next release.
> 1) I commented out a lot of timing stuff - which doesn't exist
>    on Win32, but it seems mostly to be for debugging and feedback
>    so I hope it's not important 
I think that's right.
> 2) It seems the garbage collector doesn't do memory shrinking of
>    the stack anymore (the ML call-stack i presume?) as it did
>    in the old version I ported. This should actually give one
>    problem _less_ on Win32 - but maybe the code has just changed
>    and maybe you still do stack shrinking, only in a different way?
The stack is allocated in the heap now.  It can be shrunk during a gc,
which may then shrink the toSpace after the copying part of the gc is
done.
> 3) There are no signals in Win32 - I'm not sure if it's safe to
>    just uncomment all that stuff (after all the GC seems to
>    only be concerned about disabling those signals... :)
>    and if I've done it right.
The signals stuff in gc.c is all for helping the implementation of
MLton.Signal.  So if that isn't exported, you should be ok.
> 4) Win32 does not have the mprotect function - so I uncommented
>    that in ssmmap - but ssmmap is not even called anymore - after
>    the uncommenting of everything in the function initSignalStack 
>    because of the signals (which I'm not sure will be safe either?)
>    So maybe ssmmap is not important at all...
It looks that way.
> Anyways - look for the following in the code:
...
I'll have a look over the next week and we can figure stuff out.
)