Subject: Re: sysinst bug and errors
To: Dave Huang <khym@azeotrope.org>
From: Scott Reynolds <scottr@clank.org>
List: port-mac68k
Date: 09/09/2002 12:06:15
On Thursday, September 5, 2002, at 11:55 PM, Dave Huang wrote:

> Hmm... isn't the idea to call the 040 FPSP if running on an 040 and 
> FPSP
> is compiled in, or take an FP emulation trap if on 020/030 and
> FPU_EMULATE is compiled in? The code as it is now seems to call the
> illegal instruction handler if FPSP is compiled in but the CPU isn't an
> 040, instead of calling the FP emulator.

I looked at this some more over the weekend and determined that this 
particular piece of code can be executed only as the result of an 
040-specific exception. With this detail about the exception in mind 
you can see that while the code is significantly different it is 
functionally equivalent on the 020/030, and further implements correct 
behavior in the case of the 040.

I've looked into the possibility of ELF alignment issues and there seem 
to be none, or at least none that are readily apparent. I've gone so 
far as to find out what changed between 1-5-RELEASE and 1-6-RC3 (as two 
general points of reference) and nothing's jumping out there, either. 
The changes are either mechanical substitutions (round() -> 
fpu_round()) or are not obviously related to anything other than the 
68LC040.

It's as much a mystery as ever, at this point...

--scott