http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49104
--- Comment #5 from Uros Bizjak <ubizjak at gmail dot com> 2011-05-22 18:45:30 UTC --- Actually, PMOVMSKB belongs to "AMD extensions to MMX" instruction set, so we should check MMXEXT bit (see PR 48743). bit_CMOVE can be also checked in %edx as returned from 0x8000 0001 function. Index: libcpp/lex.c =================================================================== --- libcpp/lex.c (revision 174030) +++ libcpp/lex.c (working copy) @@ -488,7 +488,7 @@ minimum = 3; #elif defined(__SSE2__) minimum = 2; -#elif defined(__SSE__) || defined(__3dNOW_A__) +#elif defined(__SSE__) minimum = 1; #endif @@ -505,7 +505,7 @@ } else if (__get_cpuid (0x80000001, &dummy, &dummy, &dummy, &edx)) { - if (minimum == 1 || edx & bit_3DNOWP) + if (minimum == 1 || (edx & (bit_MMXEXT | bit_CMOV))) impl = search_line_mmx; }