Print this page
remove support for non-ANSI compilation

*** 18,36 **** * * CDDL HEADER END */ /* * Copyright 2005 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ #ifndef _SYS_ATOMIC_H #define _SYS_ATOMIC_H - #pragma ident "%Z%%M% %I% %E% SMI" - #include <sys/types.h> #include <sys/inttypes.h> #ifdef __cplusplus extern "C" { --- 18,36 ---- * * CDDL HEADER END */ /* + * Copyright 2014 Garrett D'Amore <garrett@damore.org> + * * Copyright 2005 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ #ifndef _SYS_ATOMIC_H #define _SYS_ATOMIC_H #include <sys/types.h> #include <sys/inttypes.h> #ifdef __cplusplus extern "C" {
*** 39,49 **** #if defined(_KERNEL) && defined(__GNUC__) && defined(_ASM_INLINES) && \ (defined(__i386) || defined(__amd64)) #include <asm/atomic.h> #endif - #if defined(_KERNEL) || defined(__STDC__) /* * Increment target. */ extern void atomic_inc_8(volatile uint8_t *); extern void atomic_inc_uchar(volatile uchar_t *); --- 39,48 ----
*** 52,62 **** extern void atomic_inc_32(volatile uint32_t *); extern void atomic_inc_uint(volatile uint_t *); extern void atomic_inc_ulong(volatile ulong_t *); #if defined(_KERNEL) || defined(_INT64_TYPE) extern void atomic_inc_64(volatile uint64_t *); - #endif /* * Decrement target */ extern void atomic_dec_8(volatile uint8_t *); --- 51,60 ----
*** 264,410 **** * after the available flag has been seen, i.e. it imposes load ordering. */ extern void membar_consumer(void); #endif - #if !defined(_KERNEL) && !defined(__STDC__) - extern void atomic_inc_8(); - extern void atomic_inc_uchar(); - extern void atomic_inc_16(); - extern void atomic_inc_ushort(); - extern void atomic_inc_32(); - extern void atomic_inc_uint(); - extern void atomic_inc_ulong(); - #if defined(_INT64_TYPE) - extern void atomic_inc_64(); - #endif /* defined(_INT64_TYPE) */ - extern void atomic_dec_8(); - extern void atomic_dec_uchar(); - extern void atomic_dec_16(); - extern void atomic_dec_ushort(); - extern void atomic_dec_32(); - extern void atomic_dec_uint(); - extern void atomic_dec_ulong(); - #if defined(_INT64_TYPE) - extern void atomic_dec_64(); - #endif /* defined(_INT64_TYPE) */ - extern void atomic_add_8(); - extern void atomic_add_char(); - extern void atomic_add_16(); - extern void atomic_add_short(); - extern void atomic_add_32(); - extern void atomic_add_int(); - extern void atomic_add_ptr(); - extern void atomic_add_long(); - #if defined(_INT64_TYPE) - extern void atomic_add_64(); - #endif /* defined(_INT64_TYPE) */ - extern void atomic_or_8(); - extern void atomic_or_uchar(); - extern void atomic_or_16(); - extern void atomic_or_ushort(); - extern void atomic_or_32(); - extern void atomic_or_uint(); - extern void atomic_or_ulong(); - #if defined(_INT64_TYPE) - extern void atomic_or_64(); - #endif /* defined(_INT64_TYPE) */ - extern void atomic_and_8(); - extern void atomic_and_uchar(); - extern void atomic_and_16(); - extern void atomic_and_ushort(); - extern void atomic_and_32(); - extern void atomic_and_uint(); - extern void atomic_and_ulong(); - #if defined(_INT64_TYPE) - extern void atomic_and_64(); - #endif /* defined(_INT64_TYPE) */ - extern uint8_t atomic_inc_8_nv(); - extern uchar_t atomic_inc_uchar_nv(); - extern uint16_t atomic_inc_16_nv(); - extern ushort_t atomic_inc_ushort_nv(); - extern uint32_t atomic_inc_32_nv(); - extern uint_t atomic_inc_uint_nv(); - extern ulong_t atomic_inc_ulong_nv(); - #if defined(_INT64_TYPE) - extern uint64_t atomic_inc_64_nv(); - #endif /* defined(_INT64_TYPE) */ - extern uint8_t atomic_dec_8_nv(); - extern uchar_t atomic_dec_uchar_nv(); - extern uint16_t atomic_dec_16_nv(); - extern ushort_t atomic_dec_ushort_nv(); - extern uint32_t atomic_dec_32_nv(); - extern uint_t atomic_dec_uint_nv(); - extern ulong_t atomic_dec_ulong_nv(); - #if defined(_INT64_TYPE) - extern uint64_t atomic_dec_64_nv(); - #endif /* defined(_INT64_TYPE) */ - extern uint8_t atomic_add_8_nv(); - extern uchar_t atomic_add_char_nv(); - extern uint16_t atomic_add_16_nv(); - extern ushort_t atomic_add_short_nv(); - extern uint32_t atomic_add_32_nv(); - extern uint_t atomic_add_int_nv(); - extern void *atomic_add_ptr_nv(); - extern ulong_t atomic_add_long_nv(); - #if defined(_INT64_TYPE) - extern uint64_t atomic_add_64_nv(); - #endif /* defined(_INT64_TYPE) */ - extern uint8_t atomic_or_8_nv(); - extern uchar_t atomic_or_uchar_nv(); - extern uint16_t atomic_or_16_nv(); - extern ushort_t atomic_or_ushort_nv(); - extern uint32_t atomic_or_32_nv(); - extern uint_t atomic_or_uint_nv(); - extern ulong_t atomic_or_ulong_nv(); - #if defined(_INT64_TYPE) - extern uint64_t atomic_or_64_nv(); - #endif /* defined(_INT64_TYPE) */ - extern uint8_t atomic_and_8_nv(); - extern uchar_t atomic_and_uchar_nv(); - extern uint16_t atomic_and_16_nv(); - extern ushort_t atomic_and_ushort_nv(); - extern uint32_t atomic_and_32_nv(); - extern uint_t atomic_and_uint_nv(); - extern ulong_t atomic_and_ulong_nv(); - #if defined(_INT64_TYPE) - extern uint64_t atomic_and_64_nv(); - #endif /* defined(_INT64_TYPE) */ - extern uint8_t atomic_cas_8(); - extern uchar_t atomic_cas_uchar(); - extern uint16_t atomic_cas_16(); - extern ushort_t atomic_cas_ushort(); - extern uint32_t atomic_cas_32(); - extern uint_t atomic_cas_uint(); - extern void *atomic_cas_ptr(); - extern ulong_t atomic_cas_ulong(); - #if defined(_INT64_TYPE) - extern uint64_t atomic_cas_64(); - #endif /* defined(_INT64_TYPE) */ - extern uint8_t atomic_swap_8(); - extern uchar_t atomic_swap_uchar(); - extern uint16_t atomic_swap_16(); - extern ushort_t atomic_swap_ushort(); - extern uint32_t atomic_swap_32(); - extern uint_t atomic_swap_uint(); - extern void *atomic_swap_ptr(); - extern ulong_t atomic_swap_ulong(); - #if defined(_INT64_TYPE) - extern uint64_t atomic_swap_64(); - #endif /* defined(_INT64_TYPE) */ - - - extern int atomic_set_long_excl(); - extern int atomic_clear_long_excl(); - - extern void membar_enter(); - extern void membar_exit(); - extern void membar_producer(); - extern void membar_consumer(); - - #endif - #if defined(_KERNEL) #if defined(_LP64) || defined(_ILP32) #define atomic_add_ip atomic_add_long #define atomic_add_ip_nv atomic_add_long_nv --- 262,271 ----