Zero  0.1.0
Namespaces | Classes | Typedefs | Enumerations | Functions
lintel Namespace Reference

Namespaces

 unsafe
 

Classes

class  Atomic
 An atomic counter that avoids using locks. More...
 
class  MersenneTwisterInternal
 Mersenne Twister random number generation class. More...
 
class  RandomTempl
 

Typedefs

typedef RandomTempl< MersenneTwisterInternalMersenneTwisterRandom
 
typedef enum lintel::memory_order memory_order
 Enumeration for memory_order. More...
 
typedef Atomic< int > AtomicCounter
 

Enumerations

enum  memory_order {
  memory_order_relaxed, memory_order_consume, memory_order_acquire, memory_order_release,
  memory_order_acq_rel, memory_order_seq_cst
}
 Enumeration for memory_order. More...
 

Functions

template<typename T >
static T x86Gcc_atomic_load (const T *counter)
 
template<typename T >
static void x86Gcc_atomic_store (T *counter, T v)
 
template<typename T >
static T x86Gcc_atomic_exchange (T *counter, T v)
 
template<typename T >
static bool x86Gcc_compare_exchange (T *current, T *expected, T desired)
 
template<typename T >
static T x86Gcc_atomic_fetch_add (T *counter, T v)
 
template<typename T >
static T x86Gcc_atomic_fetch_sub (T *counter, T v)
 
template<typename T >
static T x86Gcc_atomic_fetch_or (T *counter, T v)
 
template<typename T >
static T x86Gcc_atomic_fetch_and (T *counter, T v)
 
template<typename T >
static T x86Gcc_atomic_fetch_xor (T *counter, T v)
 
static void x86Gcc_atomic_thread_fence (memory_order order)
 
void atomic_thread_fence (memory_order order)
 
void atomic_signal_fence (memory_order)
 

Typedef Documentation

§ AtomicCounter

§ memory_order

Enumeration for memory_order.

§ MersenneTwisterRandom

Enumeration Type Documentation

§ memory_order

Enumeration for memory_order.

Enumerator
memory_order_relaxed 
memory_order_consume 
memory_order_acquire 
memory_order_release 
memory_order_acq_rel 
memory_order_seq_cst 

Function Documentation

§ atomic_signal_fence()

void lintel::atomic_signal_fence ( memory_order  )
inline

§ atomic_thread_fence()

void lintel::atomic_thread_fence ( memory_order  order)
inline

§ x86Gcc_atomic_exchange()

template<typename T >
static T lintel::x86Gcc_atomic_exchange ( T counter,
T  v 
)
inlinestatic

§ x86Gcc_atomic_fetch_add()

template<typename T >
static T lintel::x86Gcc_atomic_fetch_add ( T counter,
T  v 
)
inlinestatic

§ x86Gcc_atomic_fetch_and()

template<typename T >
static T lintel::x86Gcc_atomic_fetch_and ( T counter,
T  v 
)
inlinestatic

§ x86Gcc_atomic_fetch_or()

template<typename T >
static T lintel::x86Gcc_atomic_fetch_or ( T counter,
T  v 
)
inlinestatic

§ x86Gcc_atomic_fetch_sub()

template<typename T >
static T lintel::x86Gcc_atomic_fetch_sub ( T counter,
T  v 
)
inlinestatic

§ x86Gcc_atomic_fetch_xor()

template<typename T >
static T lintel::x86Gcc_atomic_fetch_xor ( T counter,
T  v 
)
inlinestatic

§ x86Gcc_atomic_load()

template<typename T >
static T lintel::x86Gcc_atomic_load ( const T counter)
inlinestatic

§ x86Gcc_atomic_store()

template<typename T >
static void lintel::x86Gcc_atomic_store ( T counter,
T  v 
)
inlinestatic

§ x86Gcc_atomic_thread_fence()

static void lintel::x86Gcc_atomic_thread_fence ( memory_order  order)
inlinestatic

§ x86Gcc_compare_exchange()

template<typename T >
static bool lintel::x86Gcc_compare_exchange ( T current,
T expected,
T  desired 
)
inlinestatic