oro_arch.h File Reference

#include "../../rtt-config.h"
Include dependency graph for rtt/os/oro_i386/oro_arch.h:

Go to the source code of this file.

Classes

struct  oro__xchg_dummy
struct  oro_atomic_t

Defines

#define oro__xg(x)   ((struct oro__xchg_dummy *)(x))
#define ORO_ATOMIC_CLEANUP(v)
#define oro_atomic_read(v)   ((v)->counter)
#define oro_atomic_set(v, i)   (((v)->counter) = (i))
#define ORO_ATOMIC_SETUP   oro_atomic_set
#define oro_cmpxchg(ptr, o, n)
#define ORO_LOCK   "lock ; "
#define ORO_LOCK_PREFIX   "lock ; "
#define smp_mb__after_oro_atomic_dec()   barrier()
#define smp_mb__after_oro_atomic_inc()   barrier()
#define smp_mb__before_oro_atomic_dec()   barrier()
#define smp_mb__before_oro_atomic_inc()   barrier()

Functions

static unsigned long __oro_cmpxchg (volatile void *ptr, unsigned long old, unsigned long _new, int size)
static __inline__ void oro_atomic_add (oro_atomic_t *v, int i)
static __inline__ void oro_atomic_dec (oro_atomic_t *v)
static __inline__ int oro_atomic_dec_and_test (oro_atomic_t *v)
static __inline__ void oro_atomic_inc (oro_atomic_t *v)
static __inline__ int oro_atomic_inc_and_test (oro_atomic_t *v)
static __inline__ void oro_atomic_sub (oro_atomic_t *v, int i)

Define Documentation

#define oro__xg (  )     ((struct oro__xchg_dummy *)(x))

Definition at line 125 of file rtt/os/oro_i386/oro_arch.h.

#define ORO_ATOMIC_CLEANUP (  ) 

Definition at line 53 of file rtt/os/oro_i386/oro_arch.h.

#define oro_atomic_read (  )     ((v)->counter)

Definition at line 55 of file rtt/os/oro_i386/oro_arch.h.

#define oro_atomic_set ( v,
 )     (((v)->counter) = (i))

Definition at line 57 of file rtt/os/oro_i386/oro_arch.h.

#define ORO_ATOMIC_SETUP   oro_atomic_set

Definition at line 52 of file rtt/os/oro_i386/oro_arch.h.

#define oro_cmpxchg ( ptr,
o,
 ) 
Value:
((__typeof__(*(ptr)))__oro_cmpxchg((ptr),(unsigned long)(o),\
                    (unsigned long)(n),sizeof(*(ptr))))

Definition at line 154 of file rtt/os/oro_i386/oro_arch.h.

#define ORO_LOCK   "lock ; "

Definition at line 45 of file rtt/os/oro_i386/oro_arch.h.

#define ORO_LOCK_PREFIX   "lock ; "

Definition at line 119 of file rtt/os/oro_i386/oro_arch.h.

 
#define smp_mb__after_oro_atomic_dec (  )     barrier()

Definition at line 114 of file rtt/os/oro_i386/oro_arch.h.

 
#define smp_mb__after_oro_atomic_inc (  )     barrier()

Definition at line 116 of file rtt/os/oro_i386/oro_arch.h.

 
#define smp_mb__before_oro_atomic_dec (  )     barrier()

Definition at line 113 of file rtt/os/oro_i386/oro_arch.h.

 
#define smp_mb__before_oro_atomic_inc (  )     barrier()

Definition at line 115 of file rtt/os/oro_i386/oro_arch.h.


Function Documentation

static unsigned long __oro_cmpxchg ( volatile void *  ptr,
unsigned long  old,
unsigned long  _new,
int  size 
) [inline, static]

Definition at line 127 of file rtt/os/oro_i386/oro_arch.h.

static __inline__ void oro_atomic_add ( oro_atomic_t v,
int  i 
) [static]

Definition at line 59 of file rtt/os/oro_i386/oro_arch.h.

static __inline__ void oro_atomic_dec ( oro_atomic_t v  )  [static]

Definition at line 83 of file rtt/os/oro_i386/oro_arch.h.

static __inline__ int oro_atomic_dec_and_test ( oro_atomic_t v  )  [static]

Definition at line 91 of file rtt/os/oro_i386/oro_arch.h.

static __inline__ void oro_atomic_inc ( oro_atomic_t v  )  [static]

Definition at line 75 of file rtt/os/oro_i386/oro_arch.h.

static __inline__ int oro_atomic_inc_and_test ( oro_atomic_t v  )  [static]

Definition at line 102 of file rtt/os/oro_i386/oro_arch.h.

static __inline__ void oro_atomic_sub ( oro_atomic_t v,
int  i 
) [static]

Definition at line 67 of file rtt/os/oro_i386/oro_arch.h.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


rtt
Author(s): RTT Developers
autogenerated on Fri Jan 11 09:47:09 2013