This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/32661] __builtin_ia32_vec_ext suboptimal for pointer/ref args
- From: "ubizjak at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 11 Jul 2007 18:47:20 -0000
- Subject: [Bug target/32661] __builtin_ia32_vec_ext suboptimal for pointer/ref args
- References: <bug-32661-14600@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #5 from ubizjak at gmail dot com 2007-07-11 18:47 -------
(In reply to comment #3)
> This might be related to bug 32708 (and therefore have a similar fix?)
Yes, DImode moves are implemented/fixed by the patch above. Your example now
compiles to:
movq (%rdi), %rax
ret
Other examples are shown in
http://gcc.gnu.org/ml/gcc-patches/2007-07/msg01077.html.
SImode moves will be a bit harder, because shufps insn pattern is involved in
the vector expansion.
--
ubizjak at gmail dot com changed:
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |ubizjak at gmail dot com
|dot org |
URL| |http://gcc.gnu.org/ml/gcc-
| |patches/2007-
| |07/msg01077.html
Status|NEW |ASSIGNED
Last reconfirmed|2007-07-07 09:25:01 |2007-07-11 18:47:20
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32661