[v3] mutex duplicate removal

Benjamin Kosnik bkoz@redhat.com
Wed Sep 13 23:23:00 GMT 2006


This merges various mutex code scattered around the library into
ext/concurrence.h. In doing so, all duplicate effort has been
eliminated, and mutexes construction and initialization should now be
done in a consistent way throughout the library.

Two include files were moved from bits to ext, since they are
extensions and already in namespace __gnu_cxx, and should have been in
this include directory from the beginning.

I think some of the loops for threaded code could become simpler. I
believe with -02, gcc can now optimize

if (0)
 do_this;
else
  do_that;

to:
  do_that;

Since __gthread_active_p() is 0 on systems without defined(__GTHREADS)
the obvious cleanup (not attempted) could be applied.

-benjamin

tested x86/linux
tested x86/linux --disable-threads
tested x86/linux abi

-------------- next part --------------
A non-text attachment was scrubbed...
Name: p.20060913.bz2
Type: application/x-bzip2
Size: 15430 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/libstdc++/attachments/20060913/e1090324/attachment.bz2>


More information about the Libstdc++ mailing list