For the best results, it may be a good idea to have your program check for MMX & FPU first before anything else. If MMX is found, then your program uses MMX. If MMX isn't found, then it'd use FPU instead. If both FPU and MMX are not found, then it'd use regular 80x86 instructions. Doing this is quite complicated.
You'd have to detect if the computer is a 486+. If it's not a 486+, you'd use regular 80x86 instructions. If it's a 486+, then you'd use the CPUID instruction to detect if there's an FPU, and then detect if it's a 686+. I don't know how to do this.
It looks like you're new here. If you want to get involved, click one of these buttons!