x86codegen bug (1/2)

Matthew Fluet mfluet@intertrust.com
Fri, 1 Jun 2001 09:00:35 -0700 (PDT)


Fixed.  Had to do with the fact that I try to be a little smart about
managing the flt. stack;  The basic issue is that unlike the gprs, we need
to get values to the top of the flt stack before moving them to memory or
removing them from the stack.  The allocation code for fmov was copied
from the allocation code for mov, but the two register files follow
slightly different invariants, and we tickled one of them.

So, now moments.sml compiles, but I get subscript exceptions on running
it; but so does SML/NJ, so I think it's working as well as can be
expected.

Steve, you can pickup the updated /codegen/x86 directory off of
/home/mfluet/mlton/mlton/src/mlton on vinous.  That also has the fix for
Henry's bloat example.