This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/59794] [4.7/4.8/4.9 Regression] i386 backend fails to detect MMX/SSE/AVX return value
- From: "hjl.tools at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 14 Jan 2014 03:28:42 +0000
- Subject: [Bug target/59794] [4.7/4.8/4.9 Regression] i386 backend fails to detect MMX/SSE/AVX return value
- Auto-submitted: auto-generated
- References: <bug-59794-4 at http dot gcc dot gnu dot org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59794
H.J. Lu <hjl.tools at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |rth at gcc dot gnu.org
Summary|i386 backend fails to |[4.7/4.8/4.9 Regression]
|detect SSE/AVX return value |i386 backend fails to
| |detect MMX/SSE/AVX return
| |value
--- Comment #4 from H.J. Lu <hjl.tools at gmail dot com> ---
This is a regression:
[hjl@gnu-6 tmp]$ cat m1.i
typedef int __v2si __attribute__ ((__vector_size__ (8)));
extern __v2si y;
__v2si
foo ()
{
return y;
}
[hjl@gnu-6 tmp]$ cc -S -mno-mmx m1.i -m32
[hjl@gnu-6 tmp]$
This may be caused by r83533. ix86_struct_value_rtx sees BLKmode
when SSE is disabled and DImode when MMX is disabled.