PAPI 7.1.0.0
Loading...
Searching...
No Matches
short_acquire_release_volatile.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define AO_GCC_BARRIER()   (void)0
 
#define AO_HAVE_GCC_BARRIER
 
#define AO_HAVE_short_load_acquire
 
#define AO_HAVE_short_store_release
 

Functions

AO_INLINE unsigned short AO_short_load_acquire (const volatile unsignedshort *addr)
 
AO_INLINE void AO_short_store_release (volatile unsignedshort *addr, unsignedshort new_val)
 

Macro Definition Documentation

◆ AO_GCC_BARRIER

#define AO_GCC_BARRIER ( )    (void)0

Definition at line 39 of file short_acquire_release_volatile.h.

◆ AO_HAVE_GCC_BARRIER

#define AO_HAVE_GCC_BARRIER

Definition at line 41 of file short_acquire_release_volatile.h.

◆ AO_HAVE_short_load_acquire

#define AO_HAVE_short_load_acquire

Definition at line 53 of file short_acquire_release_volatile.h.

◆ AO_HAVE_short_store_release

#define AO_HAVE_short_store_release

Definition at line 62 of file short_acquire_release_volatile.h.

Function Documentation

◆ AO_short_load_acquire()

AO_INLINE unsigned short AO_short_load_acquire ( const volatile unsignedshort *  addr)

Definition at line 45 of file short_acquire_release_volatile.h.

46{
47 unsignedshort result = *addr;
48
49 /* A normal volatile load generates an ld.acq (on IA-64). */
51 return result;
52}
volatile int result
#define AO_GCC_BARRIER()

◆ AO_short_store_release()

AO_INLINE void AO_short_store_release ( volatile unsignedshort *  addr,
unsignedshort  new_val 
)

Definition at line 56 of file short_acquire_release_volatile.h.

57{
59 /* A normal volatile store generates an st.rel (on IA-64). */
60 *addr = new_val;
61}