This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r182294 - in /trunk/libitm: ChangeLog beginend....
- From: rth at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Tue, 13 Dec 2011 19:11:26 -0000
- Subject: r182294 - in /trunk/libitm: ChangeLog beginend....
Author: rth
Date: Tue Dec 13 19:11:25 2011
New Revision: 182294
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=182294
Log:
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.
Added:
trunk/libitm/local_atomic
Modified:
trunk/libitm/ChangeLog
trunk/libitm/beginend.cc
trunk/libitm/config/alpha/target.h
trunk/libitm/config/linux/rwlock.cc
trunk/libitm/config/posix/rwlock.cc
trunk/libitm/config/x86/target.h
trunk/libitm/libitm_i.h
trunk/libitm/method-gl.cc
trunk/libitm/stmlock.h