https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96239

--- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 49766
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49766&action=edit
gcc11-pr96239.patch

So, I wrote this untested patch which fixes my testcases, but doesn't fix due
to pass ordering issue the original one, as the bswap pass is done before
vectorization only (both loop and slp).
I guess some of the options are schedule another bswap pass instance later, or
include just the vector CONSTRUCTOR handling in e.g. the store-merging pass
(yes, it would be related just because the bswap code lives in the
store-merging source file and performs also bswap optimizations upon stores).

Reply via email to