public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "cvs-commit at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug libstdc++/115308] std::experimental::simd<char> is not convertible to NEON intrinsic type with Clang
Date: Tue, 11 Jun 2024 09:51:08 +0000	[thread overview]
Message-ID: <bug-115308-4-CBRtuFRURZ@http.gcc.gnu.org/bugzilla/> (raw)
In-Reply-To: <bug-115308-4@http.gcc.gnu.org/bugzilla/>

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

--- Comment #4 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-13 branch has been updated by Matthias Kretz
<mkretz@gcc.gnu.org>:

https://gcc.gnu.org/g:ef2169090d0868e4718c2ebf25365aaa52c22139

commit r13-8841-gef2169090d0868e4718c2ebf25365aaa52c22139
Author: Matthias Kretz <m.kretz@gsi.de>
Date:   Mon Jun 3 12:02:07 2024 +0200

    libstdc++: Fix simd<char> conversion for -fno-signed-char for Clang

    The special case for Clang in the trait producing a signed integer type
    lead to the trait returning 'char' where it should have been 'signed
    char'. This workaround was introduced because on Clang the return type
    of vector compares was not convertible to '_SimdWrapper<
    __int_for_sizeof_t<...' unless '__int_for_sizeof_t<char>' was an alias
    for 'char'. In order to not rewrite the complete mask type code (there
    is code scattered around the implementation assuming signed integers),
    this needs to be 'signed char'; so the special case for Clang needs to
    be removed.
    The conversion issue is now solved in _SimdWrapper, which now
    additionally allows conversion from vector types with compatible
    integral type.

    Signed-off-by: Matthias Kretz <m.kretz@gsi.de>

    libstdc++-v3/ChangeLog:

            PR libstdc++/115308
            * include/experimental/bits/simd.h (__int_for_sizeof): Remove
            special cases for __clang__.
            (_SimdWrapper): Change constructor overload set to allow
            conversion from vector types with integral conversions via bit
            reinterpretation.

    (cherry picked from commit 8e36cf4c5c9140915d0019999db132a900b48037)

  parent reply	other threads:[~2024-06-11  9:51 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-05-31 14:17 [Bug libstdc++/115308] New: " mkretz at gcc dot gnu.org
2024-05-31 14:18 ` [Bug libstdc++/115308] " mkretz at gcc dot gnu.org
2024-06-04  8:22 ` cvs-commit at gcc dot gnu.org
2024-06-04  8:28 ` mkretz at gcc dot gnu.org
2024-06-10  5:58 ` cvs-commit at gcc dot gnu.org
2024-06-11  9:51 ` cvs-commit at gcc dot gnu.org [this message]
2024-06-20  4:48 ` ramana at gcc dot gnu.org
2024-06-20  7:25 ` mkretz at gcc dot gnu.org
2024-06-20 12:45 ` cvs-commit at gcc dot gnu.org

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-115308-4-CBRtuFRURZ@http.gcc.gnu.org/bugzilla/ \
    --to=gcc-bugzilla@gcc.gnu.org \
    --cc=gcc-bugs@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).