X-Git-Url: https://git.liburcu.org/?a=blobdiff_plain;f=tests%2Ftest_uatomic.c;h=5e72baf842898dc3c29ec82df36ff5e97ed37e99;hb=3c6b52f2c0ef93b6c9287db545f39b4da0443336;hp=5682655c47df257e0852caf86d146b6b090ecb01;hpb=f469d83969772a24539eaa24430bc73347a882a3;p=urcu.git diff --git a/tests/test_uatomic.c b/tests/test_uatomic.c index 5682655..5e72baf 100644 --- a/tests/test_uatomic.c +++ b/tests/test_uatomic.c @@ -1,6 +1,6 @@ #include #include -#include +#include struct testvals { unsigned char c; @@ -33,12 +33,20 @@ do { \ assert(uatomic_read(ptr) == 23); \ uatomic_dec(ptr); \ assert(uatomic_read(ptr) == 22); \ - v = uatomic_add_return(ptr, 100); \ - assert(v == 122); \ + v = uatomic_add_return(ptr, 74); \ + assert(v == 96); \ + assert(uatomic_read(ptr) == 96); \ + uatomic_or(ptr, 58); \ assert(uatomic_read(ptr) == 122); \ v = uatomic_sub_return(ptr, 1); \ assert(v == 121); \ + uatomic_sub(ptr, (unsigned int) 2); \ + assert(uatomic_read(ptr) == 119); \ + uatomic_inc(ptr); \ + uatomic_inc(ptr); \ assert(uatomic_read(ptr) == 121); \ + uatomic_and(ptr, 129); \ + assert(uatomic_read(ptr) == 1); \ } while (0) int main(int argc, char **argv)