http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57807
Bug ID: 57807 Summary: Compile failure with __builtin_ia32_unpcklpd Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: jleahy+gcc at gmail dot com The following code sample will not compile when "-masm=intel" is set: (eg. gcc -masm=intel -c foo.c) typedef double __v2df __attribute__((__vector_size__(16))); typedef double __m128d __attribute__((__vector_size__(16), __may_alias__)); __m128d _mm_unpacklo_pd(__m128d __A, __m128d __B) { return (__m128d)__builtin_ia32_unpcklpd((__v2df)__A, (__v2df)__B); } It generates "movhpd xmm0, XMMWORD PTR [rbp-32]", which should be "movhpd xmm0, QWORD PTR [rbp-32]".