Quote:
Originally Posted by richardpl
But it is enabled only if cpu actually have npx (DEV_NPX defined), 686 CPU do not have that coprocessor. (ony 486DX CPU, and systems with 387 or 487SX coprocessors)
This npx(4) man page may shed more light.
I think if it is possible on some of such CPUs to build kernel without I586_CPU and than npx routines would be emulated - slower.
|
All x86 processors, modern ones anyway, have a math coproccessor.. and it's a requirement of OpenBSD at least.
In newer processors, it's a part of the actual CPU.. in the 486/386 era, it was an optional upgrade.
I have a few systems without math coprocessor, NetBSD runs fine on them.. as it has a FPU emulator. (
Loss of precision though.).
I'm not aware of FreeBSD has a FPU emulator or not, but in the OpenBSD world.. it was dropped after the switch to the ELF format, nobody wanted to port it over.
I'm a guest here, in OpenBSD.. CPU optimizations go unrecommended, and considering the negligible amount of class specific code, why not keep them all defined? IMHO.