summaryrefslogtreecommitdiff
path: root/libstdc++-v3/config
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2015-09-29 13:54:05 +0100
committerJonathan Wakely <redi@gcc.gnu.org>2015-09-29 13:54:05 +0100
commitce535a9685b11c846560cc0f9f4dded1ca558efc (patch)
tree1c41b68da533870ce3a44a9dd4a934252561bfbf /libstdc++-v3/config
parentc357b903daa3f831a34541a9d99469ccce226d54 (diff)
downloadgcc-ce535a9685b11c846560cc0f9f4dded1ca558efc.tar.gz
Reduce space and time overhead of std::thread
PR libstdc++/65393 * config/abi/pre/gnu.ver: Export new symbols. * include/std/thread (thread::_State, thread::_State_impl): New types. (thread::_M_start_thread): Add overload taking unique_ptr<_State>. (thread::_M_make_routine): Remove. (thread::_S_make_state): Add. (thread::_Impl_base, thread::_Impl, thread::_M_start_thread) [_GLIBCXX_THREAD_ABI_COMPAT] Only declare conditionally. * src/c++11/thread.cc (execute_native_thread_routine): Rename to execute_native_thread_routine_compat and re-define to use _State. (thread::_State::~_State()): Define. (thread::_M_make_thread): Define new overload. (thread::_M_make_thread) [_GLIBCXX_THREAD_ABI_COMPAT]: Only define old overloads conditionally. From-SVN: r228242
Diffstat (limited to 'libstdc++-v3/config')
-rw-r--r--libstdc++-v3/config/abi/pre/gnu.ver5
1 files changed, 5 insertions, 0 deletions
diff --git a/libstdc++-v3/config/abi/pre/gnu.ver b/libstdc++-v3/config/abi/pre/gnu.ver
index d42cd37af66..08d9bc6c50e 100644
--- a/libstdc++-v3/config/abi/pre/gnu.ver
+++ b/libstdc++-v3/config/abi/pre/gnu.ver
@@ -1870,6 +1870,11 @@ GLIBCXX_3.4.22 {
# std::uncaught_exceptions()
_ZSt19uncaught_exceptionsv;
+ # std::thread::_State::~_State()
+ _ZT[ISV]NSt6thread6_StateE;
+ _ZNSt6thread6_StateD[012]Ev;
+ _ZNSt6thread15_M_start_threadESt10unique_ptrINS_6_StateESt14default_deleteIS1_EEPFvvE;
+
} GLIBCXX_3.4.21;
# Symbols in the support library (libsupc++) have their own tag.