debug abi breaking change patch

François Dumont frs.dumont@gmail.com
Wed Feb 8 20:28:00 GMT 2012


Hi

     Even if not yet officially documented, I am working on it, a new 
libstdc++-v3 branch has been created:

libstdcxx_so_7-2-branch

     This branch purpose is to receive all abi breaking changes that 
can't be pushed into the trunk for the moment.

     So here is the first patch I would like to commit in it. It removes 
the pool of mutexes relying in the library and associates a mutex to 
each debug sequence. A little more memory consumed but no contention 
when threads are playing with distinct debug sequences.

2012-02-08  François Dumont <fdumont@gcc.gnu.org>

         * include/debug/safe_base.h (_Safe_iterator_base::_M_get_mutex):
         Remove. (_Safe_sequence_base::_M_get_mutex): Remove and replace
         with _M_mutex.
         * include/debug/safe_sequence.tcc, safe_unordered_container.tcc,
         forward_list: Adapt to use _M_mutex rather than _M_get_mutex.
         * src/c++11/debug.cc: Adapt to use
         _M_mutex. (anonymous::get_safe_base_mutex): Remove.

Tested under x86_64 linux. Do you agree to push it into the branch ?

François

-------------- next part --------------
A non-text attachment was scrubbed...
Name: debug.patch
Type: text/x-patch
Size: 8026 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/libstdc++/attachments/20120208/73842158/attachment.bin>


More information about the Libstdc++ mailing list