Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
NAME
       ck_pr_neg_ptr,		ck_pr_neg_ptr_zero,	     ck_pr_neg_double,
       ck_pr_neg_double_zero,	    ck_pr_neg_char,	  ck_pr_neg_char_zero,
       ck_pr_neg_uint, ck_pr_neg_uint_zero, ck_pr_neg_int, ck_pr_neg_int_zero,
       ck_pr_neg_64,   ck_pr_neg_64_zero,   ck_pr_neg_32,   ck_pr_neg_32_zero,
       ck_pr_neg_16,  ck_pr_neg_16_zero,  ck_pr_neg_8,	 ck_pr_neg_8_zero   --
       atomic negation operations

LIBRARY
       Concurrency Kit (libck, -lck)

SYNOPSIS
       #include	<ck_pr.h>

       void
       ck_pr_neg_ptr(void *target);

       void
       ck_pr_neg_ptr_zero(void *target,	bool *z);

       void
       ck_pr_neg_double(double *target);

       void
       ck_pr_neg_double_zero(double *target, bool *z);

       void
       ck_pr_neg_char(char *target);

       void
       ck_pr_neg_char_zero(char	*target, bool *z);

       void
       ck_pr_neg_uint(unsigned int *target);

       void
       ck_pr_neg_uint_zero(unsigned int	*target, bool *z);

       void
       ck_pr_neg_int(int *target);

       void
       ck_pr_neg_int_zero(int *target, bool *z);

       void
       ck_pr_neg_64(uint64_t *target);

       void
       ck_pr_neg_64_zero(uint64_t *target, bool	*z);

       void
       ck_pr_neg_32(uint32_t *target);

       void
       ck_pr_neg_32_zero(uint32_t *target, bool	*z);

       void
       ck_pr_neg_16(uint16_t *target);

       void
       ck_pr_neg_16_zero(uint16_t *target, bool	*z);

       void
       ck_pr_neg_8(uint8_t *target);

       void
       ck_pr_neg_8_zero(uint8_t	*target, bool *z);

DESCRIPTION
       The  ck_pr_neg(3)  family  of  functions	 atomically  negate  the value
       pointed to by target.

RETURN VALUES
       The ck_pr_neg_zero functions set	the value pointed to by	z if  the  re-
       sult  of	the negation operation was 0. They set the pointed to value to
       false otherwise.

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_load(3),  ck_pr_store(3),	 ck_pr_fas(3),
       ck_pr_faa(3),  ck_pr_inc(3),  ck_pr_dec(3), ck_pr_not(3), ck_pr_add(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 7, 2013			  ck_pr_neg(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=ck_pr_neg&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help