>>>>> Now I'm running into "trap invalid opcode" errors on the older >>>>> systems. Can I disable some of the newer CPU instruction sets on the >>>>> master laptop when compiling to hopefully generate binaries that will >>>>> work on the older systems? >>>> >>>> Yes. You need to find out CPU_FLAGS_X86 and "-march=" values the >>>> machines have, and use that in make.conf. Run the commands... >>>> >>>> cpuinfo2cpuflags-x86 >>>> gcc -c -Q -march=native --help=target | grep march= >>>> >>>> ...on the target machines. This will tell you what "native" is and >>>> what CPU_FLAGS_X86 values to use. >>>> >>>> https://gcc.gnu.org/onlinedocs/gcc-6.3.0/gcc/x86-Options.html#x86-Options >>>> lists available "march=" options, and what instruction sets they support. >>>> E.g. my old core2 desktop shows... >>>> >>>> [d531][waltdnes][~] cpuinfo2cpuflags-x86 >>>> CPU_FLAGS_X86="mmx mmxext sse sse2 sse3 ssse3" >>>> >>>> [d531][waltdnes][~] gcc -c -Q -march=native --help=target | grep march= >>>> -march= core2 >>>> >>>> >>>> Unless the laptops are really old, you can probably get away with... >>>> CFLAGS="-O2 march=core2 -mfpmath=sse -fopenmp -fomit-frame-pointer -pipe >>>> -fno-unwind-tables -fno-asynchronous-unwind-tables" >>>> >>>> booby trap 1) Unless all machines are Intel "Atom" family, do *NOT* use >>>> a "march=" that implements the "movbe" instruction. >>>> >>>> booby trap 2) If you throw in any AMD-based machines proceed with care. >>>> >>>> Can you post the output of... >>>> gcc -c -Q -march=native --help=target | grep march= >>>> ...for all the target machines? >>> >>> >>> Let's see how -mtune=native goes and resort to the above if necessary. >>> It doesn't look too bad though. >> >> >> emerge -e world has finished and pushed and -mtune=native seems to >> have solved the issue for now. >> > > You might be interested in "-march=x86-64 -mtune=generic" though this > will mean you might miss out on some optimizations.
If I could miss out on optimizations, what is the advantage compared to -mtune=native? Better compatibility across CPUs? - Grant

