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

--- Comment #4 from Thomas Preud'homme <thomas.preudhomme at arm dot com> ---
(In reply to Richard Biener from comment #3)
>   _3 = MEM[(const float *)this_1(D) + 4B];
>   _4 = MEM[(const float *)this_1(D)];
>   _5 = MEM[(const float *)this_1(D) + 12B];
>   _6 = MEM[(const float *)this_1(D) + 8B];
>   _7 = {_3, _4, _5, _6};
>   return _7;
> 
> does look like an opportunity for a bswap pass improvement.  Basically
> handle CONSTRUCTOR as supported composition operation (and then support
> vector loads and shuffle, of course).

I had started working on shuffle support in bswap but I realized this would
probably not help ARM as move between floating point register and general
purpose register are quite slow. I then moved on to higher priority tasks This
doesn't mean I'm finished with the bswap task, as several improvement were
suggested to me during the review of the first patch to improve bswap.

So I wouldn't hold my breath for me doing work for now, feel free to beat me to
it.

Reply via email to