[Bug tree-optimization/94908] Failure to optimally optimize certain shuffle patterns
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94908 --- Comment #3 from Gabriel Ravier --- Looks like this gives much better output now.
[Bug tree-optimization/94908] Failure to optimally optimize certain shuffle patterns
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94908 Richard Biener changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed||2020-05-04 Ever confirmed|0 |1 --- Comment #2 from Richard Biener --- Hmm, ideally it would be extract g()[1], insert at a[0]. But yes, we're not trying to split an not handled suffle into two but leave that for targets to sort out ... (x86 has code for many 3-insn shuffles for example).
[Bug tree-optimization/94908] Failure to optimally optimize certain shuffle patterns
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94908 --- Comment #1 from Marc Glisse --- Even if we write __builtin_shuffle, the vector lowering pass turns it into the same code (constructor of BIT_FIELD_REFs), which seems to indicate that the target does not handle this pattern.