Bug 169765

Summary: [g++] Generates invalid MMX code for _mm_set_pi32()
Product: [Fedora] Fedora Reporter: Enrico Scholz <rh-bugzilla>
Component: gccAssignee: Jakub Jelinek <jakub>
Status: CLOSED RAWHIDE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 4   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: 4.0.2-3 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2005-10-08 08:30:24 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Enrico Scholz 2005-10-03 13:08:35 UTC
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%

Comment 2 Jakub Jelinek 2005-10-08 08:30:24 UTC
Should be fixed in gcc-4.0.2-3.