http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52607
Marc Glisse <marc.glisse at normalesup dot org> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #26909|0 |1 is obsolete| | --- Comment #5 from Marc Glisse <marc.glisse at normalesup dot org> 2012-03-18 12:53:13 UTC --- Created attachment 26911 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=26911 patch With this one, all V4DF shuffles on one vector are done in at most 3 instructions (and are correct). Doing V8SF at the same time was getting confusing so I dropped it for the last 2 functions, which end up looking almost like: "if the pattern is 0112 do this, if it is 0130 do that, etc". I didn't check if all the functions are still used by at least one pattern... Note: my access to an avx machine is not sufficient to submit a patch, so feel free to take pieces of this and modify/test/submit them (I have a copyright assignment).