public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
From: "s_gccbugzilla at nedprod dot com" <gcc-bugzilla@gcc.gnu.org> To: gcc-bugs@gcc.gnu.org Subject: [Bug target/108659] Suboptimal 128 bit atomics codegen on AArch64 and x64 Date: Fri, 03 Feb 2023 17:14:59 +0000 [thread overview] Message-ID: <bug-108659-4-wiMWCUsDbN@http.gcc.gnu.org/bugzilla/> (raw) In-Reply-To: <bug-108659-4@http.gcc.gnu.org/bugzilla/> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108659 --- Comment #3 from Niall Douglas <s_gccbugzilla at nedprod dot com> --- > AMD has guaranteed it, but there is still VIA and Zhaoxin and while we have some statement from the latter, I'm not sure it is enough and we don't have anything from VIA. See PR104688 for details. I'm wondering if a compiler opt out flag like -no-msseatomic16 to turn off use of SSE for 128 bit atomics wouldn't be an idea? Given the small market share of those CPU vendors, seems a shame to hold up implementation. (Also, if you do turn it on by default and advertise that widely, I suspect those vendors will hurry up with their documentation) > FWIW, the GCC codegen for aarch64 is at https://godbolt.org/z/qvx9484nY (arm and aarch64 are different targets). It emits a call to libatomic, which for GCC 13 will use a lockless implementation when possible at runtime, see g:d1288d850944f69a795e4ff444a427eba3fec11b Thanks for the catch, my mistake. It would seem the codegen is similarly inferior to the codegen from clang for both aarch64 and x64. You may be interested in reading https://reviews.llvm.org/D110069. It wanted to have LLVM generate a 128 bit AArch64 CAS for atomics. LLVM merged that change, it'll be in the next release.
next prev parent reply other threads:[~2023-02-03 17:14 UTC|newest] Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top 2023-02-03 15:42 [Bug c++/108659] New: " s_gccbugzilla at nedprod dot com 2023-02-03 16:02 ` [Bug target/108659] " jakub at gcc dot gnu.org 2023-02-03 16:14 ` ktkachov at gcc dot gnu.org 2023-02-03 17:14 ` s_gccbugzilla at nedprod dot com [this message] 2023-02-03 17:20 ` pinskia at gcc dot gnu.org 2023-02-03 21:04 ` wilco at gcc dot gnu.org 2023-02-03 21:08 ` pinskia at gcc dot gnu.org 2023-02-03 21:22 ` s_gccbugzilla at nedprod dot com 2023-02-03 21:51 ` wilco at gcc dot gnu.org 2023-02-03 21:58 ` jakub at gcc dot gnu.org 2023-02-03 22:34 ` s_gccbugzilla at nedprod dot com 2023-02-03 22:45 ` wilco at gcc dot gnu.org 2023-05-31 13:25 ` [Bug target/108659] Suboptimal 128 bit atomics codegen x64 pinskia 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-108659-4-wiMWCUsDbN@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: linkBe 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).