From 852a971c260cc5b6c6f3e0c5568db683fe3526c8 Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Tue, 6 Nov 2018 21:35:27 +0000 Subject: Implement std::pmr::unsynchronized_pool_resource Implement std::pmr::unsynchronized_pool_resource * config/abi/pre/gnu.ver: Add new symbols. * include/std/memory_resource (std::pmr::__pool_resource): New class. (std::pmr::unsynchronized_pool_resource): New class. * src/c++17/Makefile.am: Add -fimplicit-templates to flags for memory_resource.cc * src/c++17/Makefile.in: Regenerate. * src/c++17/memory_resource.cc (bitset, chunk, big_block): New internal classes. (__pool_resource::_Pool): Define new class. (munge_options, pool_index, select_num_pools): New internal functions. (__pool_resource::__pool_resource, __pool_resource::~__pool_resource) (__pool_resource::allocate, __pool_resource::deallocate) (__pool_resource::_M_alloc_pools): Define member functions. (unsynchronized_pool_resource::unsynchronized_pool_resource) (unsynchronized_pool_resource::~unsynchronized_pool_resource) (unsynchronized_pool_resource::release) (unsynchronized_pool_resource::_M_find_pool) (unsynchronized_pool_resource::do_allocate) (unsynchronized_pool_resource::do_deallocate): Define member functions. * testsuite/20_util/unsynchronized_pool_resource/allocate.cc: New test. * testsuite/20_util/unsynchronized_pool_resource/is_equal.cc: New test. * testsuite/20_util/unsynchronized_pool_resource/options.cc: New test. * testsuite/20_util/unsynchronized_pool_resource/release.cc: New test. From-SVN: r265853 --- libstdc++-v3/config/abi/pre/gnu.ver | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'libstdc++-v3/config/abi') diff --git a/libstdc++-v3/config/abi/pre/gnu.ver b/libstdc++-v3/config/abi/pre/gnu.ver index e8cd286..b55038b 100644 --- a/libstdc++-v3/config/abi/pre/gnu.ver +++ b/libstdc++-v3/config/abi/pre/gnu.ver @@ -2055,6 +2055,15 @@ GLIBCXX_3.4.26 { _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE4openEPKwSt13_Ios_Openmode; _ZN11__gnu_debug25_Safe_local_iterator_base16_M_attach_singleEPNS_19_Safe_sequence_baseEb; + + # members + _ZTINSt3pmr28unsynchronized_pool_resourceE; + _ZNSt3pmr28unsynchronized_pool_resourceC[12]ERKNS_12pool_optionsEPNS_15memory_resourceE; + _ZNSt3pmr28unsynchronized_pool_resourceD[12]Ev; + _ZNSt3pmr28unsynchronized_pool_resource7releaseEv; + _ZNSt3pmr28unsynchronized_pool_resource11do_allocateEmm; + _ZNSt3pmr28unsynchronized_pool_resource13do_deallocateEPvmm; + } GLIBCXX_3.4.25; # Symbols in the support library (libsupc++) have their own tag. -- cgit v1.1