bash-3.2$ cat y.c
#include <stdio.h>
int
main ()
{
#ifdef __MMX__
printf ("MMX\n");
#endif
#ifdef __3dNOW__
printf ("3dNOW\n");
#endif
#ifdef __3dNOW_A__
printf ("3dNOW_A\n");
#endif
}
bash-3.2$ /usr/gcc-4.3/bin/gcc -march=k8 -msse5 y.c && ./a.out
MMX
3dNOW
3dNOW_A
bash-3.2$ /usr/gcc-4.3/bin/gcc -march=k8 -mno-sse5 y.c && ./a.out
MMX
bash-3.2$
Why does -mno-sse5 turn off 3dNOW and 3dNOW_A?
--
Summary: Strange effect of -msse5/-mno-sse5
Product: gcc
Version: 4.3.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: hjl dot tools at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35195