http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48084
Summary: [x32] internal compiler error: in copy_to_mode_reg, at explow.c:630 Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target AssignedTo: unassig...@gcc.gnu.org ReportedBy: hjl.to...@gmail.com [hjl@gnu-6 ilp32-31]$ cat x.i typedef int __m64 __attribute__ ((__vector_size__ (8), __may_alias__)); typedef float __v2sf __attribute__ ((__vector_size__ (8))); typedef float __m128 __attribute__ ((__vector_size__ (16), __may_alias__)); typedef float __v4sf __attribute__ ((__vector_size__ (16))); void _mm_storeh_pi (__m64 *__P, __m128 __A) { __builtin_ia32_storehps ((__v2sf *)__P, (__v4sf)__A); } [hjl@gnu-6 ilp32-31]$ make /export/build/gnu/gcc-x32/build-x86_64-linux/gcc/xgcc -B/export/build/gnu/gcc-x32/build-x86_64-linux/gcc/ -S -o x.s -mx32 -funroll-all-loops -O3 -dp x.i x.i: In function ‘_mm_storeh_pi’: x.i:9:27: internal compiler error: in copy_to_mode_reg, at explow.c:630 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. make: *** [x.s] Error 1 [hjl@gnu-6 ilp32-31]$