Description of problem: --- $ cat foo.c #include <mmintrin.h> extern void bar(__m64); int foo() { bar(_mm_set_pi32(0x000000FF,0xFFFF00FF)); } --- | $ g++ -c -mmmx -O2 foo.c | /tmp/ccttaomY.s: Assembler messages: | /tmp/ccttaomY.s:17: Error: suffix or operands invalid for `mov' Does not happen without '-O2' or with 'gcc' (instead of 'g++'). Version-Release number of selected component (if applicable): gcc-4.0.1-4.fc4 How reproducible: 100%
http://gcc.gnu.org/ml/gcc-patches/2005-10/msg00113.html
Should be fixed in gcc-4.0.2-3.