[Adrian Chadd <adrian@creative.net.au> writes:]
>>motherboard -386sx16Mhz WITHOUT ANY 387-).
>Funny, I had the same problem.
>GCC uses FPU to do some optimisations.
So is 1.6 crashing when it tries to use the FPU? I would like to fix that.
Sadly, I no longer own a 386 system (or, for that matter, a system with a
CPU which doesn't have an FPU).
>I think I might just download vsta 1.6 and try porting a math emulator.
>Unless someone has already done it. :-)
Nope, nobody's ever even started on such a project. There's some OK
emulation stuff out on the net, so the only interest part is how to connect
it in. The most trivial would be to make it a library and use gcc's option
to turn FPU operations into function calls. Of course, then you need a
special version of each program. It really shouldn't go in the kernel (this
*is* a microkernel!), so the next possibility would be to have the C startup
register an FPU emulation trampoline. Then when the kernel saw an FPU fault
on a system without FPU, and saw that the program had registered code for
this, it would turn it into a event handler, much like the usual even
delivery mechanism.
I'll do the kernel part, if you'd prefer.
>Andy - have you actually put it anywhere that you need an FPU to do stuff ?
Yes, see the latest release documents for 1.6. It's in both the per-release
"features" (doc/features.txt) as well as the "getting started" document
(doc/roadmap.txt).
>I'm looking at revamping vsta's IP stack and network card support to make
>some mini self-contained WAN bridges/routers, and using 386's wout FPUs :)
VSTa itself does not require an FPU, and never will. It's the way gcc is
written that requires the FPU. If it *really* bothers somebody, you might
go look at how it's used, and then look at how it was changed in the old 1.x
VSTa port (I stole the technique from an old port of djgpp), and see if you
couldn't patch it out again. That'd be fine with me.
Andy
Received on Tue Nov 18 06:08:05 1997
This archive was generated by hypermail 2.1.8 : Thu Sep 22 2005 - 15:12:43 PDT