These tests all start to fail after the fix for PR 31361 was committed to SVN. FAILing tests test SSE intrinsics by:
--quote-- /* Test that the intrinsics compile with optimization. All of them are defined as inline functions in mmintrin.h that reference the proper builtin functions. Defining away "static" and "__inline" results in all of them being compiled as proper functions. */ #define static #define __inline #include <xmmintrin.h> --/quote-- Following testcase illustrates the failure: --cut here-- typedef short __v8hi __attribute__ ((__vector_size__ (16))); typedef long long __m128i __attribute__ ((__vector_size__ (16), __may_alias__)); __m128i test (__m128i __A, const int __B) { return (__m128i)__builtin_ia32_psrlwi128 ((__v8hi)__A, __B); } --cut here-- gcc -O2 -msse2 test.c test.c: In function âtestâ: test.c:6: error: shift must be an immediate (sse-13.c and sse-14.c fail on x86_64 only as it defaults to -msse2. On i386, these tests are compiled using -msse, so xmmintrin.h is not included). -- Summary: gcc.target/i386/sse-vect-types.c FAILs (also sse-13.c and sse-14.c) Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: ssemmx Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ubizjak at gmail dot com GCC build triplet: i686-pc-linux-gnu GCC host triplet: i686-pc-linux-gnu GCC target triplet: i686-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31585