diff options
author | Nathan Myers <ncm@cantrip.org> | 2025-08-28 13:11:57 -0400 |
---|---|---|
committer | Nathan Myers <ncm@cantrip.org> | 2025-09-08 10:19:10 -0400 |
commit | 4eb12ddd32d53ef55c2bd9bb03db057f096fff8f (patch) | |
tree | fa8e8954850b7067c842106e83c0a1ce45c46f54 /gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-5-u8.c | |
parent | cdb76f4bee2943fdc7d1c00545fe396f90cbca64 (diff) | |
download | gcc-master.zip gcc-master.tar.gz gcc-master.tar.bz2 |
This patch creates a global function __syncbuf_get_mutex, gated by
_GLIBCXX_HAS_GTHREADS, replacing a static instantiated member
_S_get_mutex used in syncbuf<> construction, and makes the global
symbol visible. A static local table of 16 mutexes is shared among
all specializations of syncbuf<>, chosen on construction by a hash
of the wrapped streambuf's address.
It detaches the implementation of _S_get_mutex from the C++20 ABI.
libstdc++-v3/ChangeLog:
* include/std/syncstream: (syncbuf<>::__mutex) Remove _S_get_mutex,
use extern function instead.
* src/c++20/syncbuf.cc: Define global __syncbuf_get_mutex.
* src/c++20/Makefile.am: Mention syncbuf.cc.
* src/c++20/Makefile.in: Regenerate.
* config/abi/pre/gnu.ver: Mention mangled __syncbuf_get_mutex.
Diffstat (limited to 'gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-5-u8.c')
0 files changed, 0 insertions, 0 deletions