This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/43225] Structure copies not vectorized
- From: "astrange at ithinksw dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 29 Mar 2011 20:39:30 +0000
- Subject: [Bug target/43225] Structure copies not vectorized
- Auto-submitted: auto-generated
- References: <bug-43225-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43225
--- Comment #4 from Alexander Strange <astrange at ithinksw dot com> 2011-03-29 20:39:28 UTC ---
Better source:
#include <emmintrin.h>
struct a1 { char l[16];} __attribute__((aligned));
struct a2 { __m128i l; } __attribute__((aligned));
void f1(struct a1 *a, struct a1 *b)
{
*a = *b;
}
void f2(struct a2 *a, struct a2 *b)
{
*a = *b;
}
void f3(__m128i *a, __m128i *b)
{
*a = *b;
}
Code is the same as above in svn. LLVM uses movaps for all three functions.