X-Git-Url: https://git.lttng.org/?p=urcu.git;a=blobdiff_plain;f=urcu%2Fuatomic_generic.h;h=6b4ef9e8ddb8e0ab1eabca7e1541e421ba87adbe;hp=9ee7b7bdc22a6bedeef45ef6447d930162375c99;hb=06f22bdbb0c4c4d5db42a2e2dc35818aa61415be;hpb=f469d83969772a24539eaa24430bc73347a882a3 diff --git a/urcu/uatomic_generic.h b/urcu/uatomic_generic.h index 9ee7b7b..6b4ef9e 100644 --- a/urcu/uatomic_generic.h +++ b/urcu/uatomic_generic.h @@ -28,16 +28,12 @@ extern "C" { #endif -#ifndef BITS_PER_LONG -#define BITS_PER_LONG (__SIZEOF_LONG__ * 8) -#endif - #ifndef uatomic_set -#define uatomic_set(addr, v) STORE_SHARED(*(addr), (v)) +#define uatomic_set(addr, v) CAA_STORE_SHARED(*(addr), (v)) #endif #ifndef uatomic_read -#define uatomic_read(addr) LOAD_SHARED(*(addr)) +#define uatomic_read(addr) CAA_LOAD_SHARED(*(addr)) #endif #if !defined __OPTIMIZE__ || defined UATOMIC_NO_LINK_ERROR @@ -162,9 +158,9 @@ unsigned long _uatomic_exchange(void *addr, unsigned long val, int len) do { old = uatomic_read((unsigned int *)addr); - while (!__sync_bool_compare_and_swap_4(addr, old, val)); + } while (!__sync_bool_compare_and_swap_4(addr, old, val)); - } return old; + return old; } #if (BITS_PER_LONG == 64) case 8: