View Single Post
Old 29th October 2008
phoenix's Avatar
phoenix phoenix is offline
Risen from the ashes
Join Date: May 2008
Posts: 696

Originally Posted by richardpl View Post
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.
npx(4) is a *required* device on 32-bit FreeBSD (i386). You can't (easily) build a kernel without it. It's part of the DEFAULTS file that gets automatically pulled into every kernel build (on FreeBSD 6+, it's part of GENERIC on FreeBSD 5-).

Reading the npx man page shows that the optimisations are only enabled if the I586_CPU option is enabled in the kernel config, which matches what the source shows. Which supports what I've been saying. The only way to get these optimisations is to have I586_CPU enabled in your kernel config.

Now, whether or not those optimisations are still beneficial is up for debate.

Help for FreeBSD: Handbook, FAQ, man pages, mailing lists.
Reply With Quote