This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/61301] missed optimization of move if vector passed by reference
- From: "glisse at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Sat, 24 May 2014 09:05:35 +0000
- Subject: [Bug tree-optimization/61301] missed optimization of move if vector passed by reference
- Auto-submitted: auto-generated
- References: <bug-61301-4 at http dot gcc dot gnu dot org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61301
--- Comment #1 from Marc Glisse <glisse at gcc dot gnu.org> ---
forwprop recognizes a constructor of bit_field_ref and turns it into a
vec_perm_expr, but it can't handle a constructor of mem_ref (that requires
looking for clobbers etc, not a job for forwprop). SLP sees the mem_ref
properly but says it didn't find any opportunity. I doubt bswap handles this
kind of thing.
At least when shuffle2 is inlined it is likely to become like shuffle1...