On 25/5/19 5:22 pm, Lukas Jirkovsky via arch-dev-public wrote: > On Sat, 25 May 2019 at 04:27, Filipe Laíns via arch-dev-public > <arch-dev-public@archlinux.org> wrote: >> Setting `-mtune` to generic won't add any additional instruction sets >> by itself, but it does not prevent instruction sets from being added. >> Looks like GCC enables MMX, SSE and SSE2 by default, it isn't related >> at all to `-march` like I stated in the email but it still presents the >> same issue. > > As far as I know, MMX, SSE and SSE2 are mandatory part of the AMD64 > instruction set, so they are not enabled randomly just because someone > felt like it, but because they are be present on every x86_64 cpu. > .
Correct. Using the command I gave in my first reply: $ gcc -march=x86-64 -Q --help=target | grep sse -mfpmath= sse -mno-sse4 [enabled] -msse [enabled] -msse2 [enabled] -msse2avx [disabled] -msse3 [disabled] -msse4 [disabled] ... $ gcc -march=x86-64 -Q --help=target | grep mmx -mmmx [enabled] -mtune just tunes instructions for a "representative" set of "current" CPUs that run as x86-64. Allan