https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70814
Bug ID: 70814 Summary: atomic store of __int128 is not lock free on aarch64 Product: gcc Version: 5.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: yyc1992 at gmail dot com Target Milestone: --- `std::atomic<__int128>::store` on aarch64 is not lock free and generates a function call `__atomic_store_16`. However, required atomic instructions (`stlxp`) exists in armv8 and is used by clang. Should gcc use the same instruction as well? Ref https://llvm.org/bugs/show_bug.cgi?id=27081, which fixes the clang codegen for this case.