ck_pr_load_ptr, ck_pr_load_double, ck_pr_load_uint, ck_pr_load_int, ck_pr_load_char, ck_pr_load_64,
Contents
Description
The ck_pr_load(3) family of functions atomically loads the value pointed to by target and returns it.
This family of functions always serves as an implicit compiler barrier and is not susceptible to re-
ordering by the compiler.
Library
Concurrency Kit (libck, -lck)
Name
ck_pr_load_ptr, ck_pr_load_double, ck_pr_load_uint, ck_pr_load_int, ck_pr_load_char, ck_pr_load_64,
ck_pr_load_32, ck_pr_load_16, ck_pr_load_8 — atomic volatile load operations
Return Values
This family of functions returns the value contained in the location pointed to by the first argument.
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_store(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_load(3)
Synopsis
#include<ck_pr.h>void*ck_pr_load_ptr(constvoid*target);
doubleck_pr_load_double(constdouble*target);
unsignedintck_pr_load_uint(constunsignedint*target);
intck_pr_load_int(constint*target);
charck_pr_load_char(constchar*target);
uint64_tck_pr_load_64(constuint64_t*target);
uint32_tck_pr_load_32(constuint32_t*target);
uint16_tck_pr_load_16(constuint16_t*target);
uint8_tck_pr_load_8(constuint8_t*target);
