Mark Cave-Ayland wrote:
Tracing through the code, it seems like there's an off-by-one bug in the CIF parameter code which means that a subsequent stack push will overwrite the last saved parameter (which is %g7). I think I've fixed it and am testing a patch now.
Yes, that seems to be working correctly! :) Now a Milax OpenSolaris boot is failing here:
0 > go Jumping to entry point 00000000010071d8 for type 0000000000000001... switching to new context: entry point 0x10071d8 stack 0x00000000ffe02a91 call-method SUNW,retain: exception -21 panic - kernel: Can't allocate retained panicbuf physical address EXIT
Looks like there is some mystical Forth word called "SUNW,retain" that needs to be implemented for this to work. Time to Google for some more specs...
ATB,
Mark.