This patch requires the patch for atomic<T>::wait/notify to be applied first.

This implementation is based on the libc++ implementation, but excludes the 
alternative “central barrier” implementation for now as there is no standard 
way to switch between the two.

        * include/Makefile.am (std_headers): Add new header.
        * include/Makefile.in: Regenerate.
        * include/std/barrier: New file.
        * testsuite/30_thread/barrier/1.cc: New test.
        * testsuite/30_thread/barrier/2.cc: Likewise.
        * testsuite/30_thread/barrier/arrive_and_drop.cc: Likewise.
        * testsuite/30_thread/barrier/arrive_and_wait.cc: Likewise.
        * testsuite/30_thread/barrier/arrive.cc: Likewise.
        * testsuite/30_thread/barrier/completion.cc: Likewise.
        * testsuite/30_thread/barrier/max.cc: Likewise.

Reply via email to