]> git.ipfire.org Git - thirdparty/gcc.git/commit - libitm/config/posix/rwlock.cc
libitm: Conversion to c++11 atomics.
authorRichard Henderson <rth@redhat.com>
Tue, 13 Dec 2011 19:11:25 +0000 (11:11 -0800)
committerRichard Henderson <rth@gcc.gnu.org>
Tue, 13 Dec 2011 19:11:25 +0000 (11:11 -0800)
commit36cfbee133027429a681ce585643d38228ab1213
tree7506d65c4a5b0a1a5cd4450e48e4943360f9ab19
parentc36cc670b57fa6ebfcc387732fb7e34b7881eb14
libitm: Conversion to c++11 atomics.

        * local_atomic: New file.
        * libitm_i.h: Include it.
        (gtm_thread::shared_state): Use atomic template.
        * beginend.cc (GTM::gtm_clock): Use atomic template.
        (global_tid): Use atomic template if 64-bit atomics available.
        (gtm_thread::gtm_thread): Update shared_state access.
        (gtm_thread::trycommit): Likewise.
        (choose_code_path): Update global_tid access.
        * method-gl.cc (gl_mg::orec): Use atomic template.  Update all users.
        * stmlock.h (GTM::gtm_clock): Use atomic template.
        (gtm_get_clock, gtm_inc_clock): Update accesses.
        * config/linux/rwlock.cc (gtm_rwlock::read_lock): Remove
        redundant __sync_synchronize after atomic shared_state access.
        * config/posix/rwlock.cc (gtm_rwlock::read_lock): Likewise.
        (gtm_rwlock::write_lock_generic): Likewise.
        (gtm_rwlock::read_unlock): Likewise.
        * config/alpha/target.h (atomic_read_barrier): Remove.
        (atomic_write_barrier): Remove.
        * config/x86/target.h (atomic_read_barrier): Remove.
        (atomic_write_barrier): Remove.

From-SVN: r182294
libitm/ChangeLog
libitm/beginend.cc
libitm/config/alpha/target.h
libitm/config/linux/rwlock.cc
libitm/config/posix/rwlock.cc
libitm/config/x86/target.h
libitm/libitm_i.h
libitm/local_atomic [new file with mode: 0644]
libitm/method-gl.cc
libitm/stmlock.h