[PATCH] libstdc++: Avoid MMX return types from __builtin_shufflevector

Jonathan Wakely jwakely@redhat.com
Tue May 28 13:56:46 GMT 2024


On Wed, 15 May 2024 at 20:50, Matthias Kretz <m.kretz@gsi.de> wrote:
>
> Tested on aarch64-linux-gnu, arm-linux-gnueabihf, powerpc64le-linux-gnu,
> x86_64-linux-gnu (-m64, -m32, -mx32), and arm-linux-gnueabi
>
> OK for trunk?

OK

> And when backporting, should I squash it with the commit that
> introduced the regression?

I don't mind about that. If you cherry-pick them next to each other
and push them at the same time, nobody's going to end up using the
broken commit before the fix. It's fine to squash it if you prefer to
though.

OK for backports either way.

>
> -------------------- 8< -------------------
>
> This resolves a regression on i686 that was introduced with
> r15-429-gfb1649f8b4ad50.
>
> Signed-off-by: Matthias Kretz <m.kretz@gsi.de>
>
> libstdc++-v3/ChangeLog:
>
>         PR libstdc++/114958
>         * include/experimental/bits/simd.h (__as_vector): Don't use
>         vector_size(8) on __i386__.
>         (__vec_shuffle): Never return MMX vectors, widen to 16 bytes
>         instead.
>         (concat): Fix padding calculation to pick up widening logic from
>         __as_vector.
> ---
>  libstdc++-v3/include/experimental/bits/simd.h | 39 +++++++++++++------
>  1 file changed, 28 insertions(+), 11 deletions(-)
>
>
> --
> ──────────────────────────────────────────────────────────────────────────
>  Dr. Matthias Kretz                           https://mattkretz.github.io
>  GSI Helmholtz Centre for Heavy Ion Research               https://gsi.de
>  stdₓ::simd
> ──────────────────────────────────────────────────────────────────────────


More information about the Libstdc++ mailing list