Opérations atomiques C ++ pour les structures sans verrou

Je me suis mise en œuvre d'un lock-free mécanisme à l'aide atomique (double) de comparer et de swap instructions par exemple cmpxchg16b

Je suis en train d'écrire cette assemblée, puis en le reliant la. Cependant, je me demandais si il y avait un moyen d'obtenir le compilateur pour ce faire automatiquement pour moi? par exemple surround bloc de code avec "atomiquement' et le faire aller comprendre comment mettre en œuvre le code d'une instruction atomique dans le sous-jacent de l'architecture du processeur (ou générer une erreur lors de la compilation si le sous-jacent arc ne le supporte pas)?

P. S. je sais que gcc a quelques built-ins (au moins pour les CAS)

http://gcc.gnu.org/onlinedocs/gcc-4.4.0/gcc/Atomic-Builtins.html#Atomic-Builtins

source d'informationauteur bugmenot77