Risk-Aware AI Code Review for Business-Critical Systems
LiveReview LiveReview Explore LiveReview

ck_pr_store_ptr, ck_pr_store_double, ck_pr_store_uint, ck_pr_store_int, ck_pr_store_char, ck_pr_store_64,

Description

       The  ck_pr_store(3)  family of functions atomically stores the value specified by value into the location
       pointed to by target.  This family of functions always serves as an implicit compiler barrier and is  not
       susceptible to compiler re-ordering.

Library

       Concurrency Kit (libck, -lck)

Name

       ck_pr_store_ptr, ck_pr_store_double, ck_pr_store_uint, ck_pr_store_int, ck_pr_store_char, ck_pr_store_64,
       ck_pr_store_32, ck_pr_store_16, ck_pr_store_8 — atomic volatile store operations

Return Values

       This family of functions has no return value.

See Also

ck_pr_fence_load(3),     ck_pr_fence_load_depends(3),     ck_pr_fence_store(3),    ck_pr_fence_memory(3),
       ck_pr_add(3),  ck_pr_load(3),  ck_pr_fas(3),  ck_pr_faa(3),  ck_pr_inc(3),  ck_pr_dec(3),   ck_pr_neg(3),
       ck_pr_not(3),   ck_pr_sub(3),   ck_pr_and(3),   ck_pr_or(3),  ck_pr_xor(3),  ck_pr_cas(3),  ck_pr_btc(3),
       ck_pr_bts(3), ck_pr_btr(3)

       Additional information available at http://concurrencykit.org/

                                                 April 15, 2013                                   ck_pr_store(3)

Synopsis

#include<ck_pr.h>voidck_pr_store_ptr(void*target, void*value);

       voidck_pr_store_double(double*target, doublevalue);

       voidck_pr_store_uint(unsignedint*target, unsignedintvalue);

       voidck_pr_store_int(int*target, intvalue);

       voidck_pr_store_char(char*target, charvalue);

       voidck_pr_store_64(uint64_t*target, uint64_tvalue);

       voidck_pr_store_32(uint32_t*target, uint32_tvalue);

       voidck_pr_store_16(uint16_t*target, uint16_tvalue);

       voidck_pr_store_8(uint8_t*target, uint8_tvalue);

See Also