Macros | Typedefs | Functions
oro_msvc/oro_arch.h File Reference
#include "../../rtt-config.h"
#include <windows.h>
#include <intrin.h>
Include dependency graph for oro_msvc/oro_arch.h:

Go to the source code of this file.

Macros

#define ORO_ATOMIC_CLEANUP(a_int)
 
#define oro_atomic_read(a_int)   (*(a_int))
 
#define oro_atomic_set(a_int, n)   (*(a_int) = (n))
 
#define ORO_ATOMIC_SETUP   oro_atomic_set
 

Typedefs

typedef volatile long oro_atomic_t
 

Functions

static __forceinline void oro_atomic_add (oro_atomic_t *a_int, int n)
 
static __forceinline int oro_atomic_add_negative (oro_atomic_t *a_int, int n)
 
static __forceinline int oro_atomic_add_return (oro_atomic_t *a_int, int n)
 
static __forceinline int oro_atomic_clear_mask (oro_atomic_t *a_int, int mask)
 
static __forceinline void oro_atomic_dec (oro_atomic_t *a_int)
 
static __forceinline int oro_atomic_dec_and_test (oro_atomic_t *a_int)
 
static __forceinline int oro_atomic_dec_return (oro_atomic_t *a_int)
 
static __forceinline void oro_atomic_inc (oro_atomic_t *a_int)
 
static __forceinline int oro_atomic_inc_and_test (oro_atomic_t *a_int)
 
static __forceinline int oro_atomic_inc_return (oro_atomic_t *a_int)
 
static __forceinline int oro_atomic_set_mask (oro_atomic_t *a_int, int mask)
 
static __forceinline void oro_atomic_sub (oro_atomic_t *a_int, int n)
 
static __forceinline int oro_atomic_sub_and_test (oro_atomic_t *a_int, int n)
 
static __forceinline int oro_atomic_sub_return (oro_atomic_t *a_int, int n)
 
template<typename T >
oro_cmpxchg (volatile void *ptr, T old, T _new)
 

Macro Definition Documentation

#define ORO_ATOMIC_CLEANUP (   a_int)

Definition at line 51 of file oro_msvc/oro_arch.h.

#define oro_atomic_read (   a_int)    (*(a_int))

Definition at line 53 of file oro_msvc/oro_arch.h.

#define oro_atomic_set (   a_int,
 
)    (*(a_int) = (n))

Definition at line 55 of file oro_msvc/oro_arch.h.

#define ORO_ATOMIC_SETUP   oro_atomic_set

Definition at line 50 of file oro_msvc/oro_arch.h.

Typedef Documentation

typedef volatile long oro_atomic_t

Definition at line 48 of file oro_msvc/oro_arch.h.

Function Documentation

static __forceinline void oro_atomic_add ( oro_atomic_t a_int,
int  n 
)
static

Definition at line 57 of file oro_msvc/oro_arch.h.

static __forceinline int oro_atomic_add_negative ( oro_atomic_t a_int,
int  n 
)
static

Definition at line 92 of file oro_msvc/oro_arch.h.

static __forceinline int oro_atomic_add_return ( oro_atomic_t a_int,
int  n 
)
static

Definition at line 97 of file oro_msvc/oro_arch.h.

static __forceinline int oro_atomic_clear_mask ( oro_atomic_t a_int,
int  mask 
)
static

Definition at line 117 of file oro_msvc/oro_arch.h.

static __forceinline void oro_atomic_dec ( oro_atomic_t a_int)
static

Definition at line 77 of file oro_msvc/oro_arch.h.

static __forceinline int oro_atomic_dec_and_test ( oro_atomic_t a_int)
static

Definition at line 82 of file oro_msvc/oro_arch.h.

static __forceinline int oro_atomic_dec_return ( oro_atomic_t a_int)
static

Definition at line 112 of file oro_msvc/oro_arch.h.

static __forceinline void oro_atomic_inc ( oro_atomic_t a_int)
static

Definition at line 72 of file oro_msvc/oro_arch.h.

static __forceinline int oro_atomic_inc_and_test ( oro_atomic_t a_int)
static

Definition at line 87 of file oro_msvc/oro_arch.h.

static __forceinline int oro_atomic_inc_return ( oro_atomic_t a_int)
static

Definition at line 107 of file oro_msvc/oro_arch.h.

static __forceinline int oro_atomic_set_mask ( oro_atomic_t a_int,
int  mask 
)
static

Definition at line 122 of file oro_msvc/oro_arch.h.

static __forceinline void oro_atomic_sub ( oro_atomic_t a_int,
int  n 
)
static

Definition at line 62 of file oro_msvc/oro_arch.h.

static __forceinline int oro_atomic_sub_and_test ( oro_atomic_t a_int,
int  n 
)
static

Definition at line 67 of file oro_msvc/oro_arch.h.

static __forceinline int oro_atomic_sub_return ( oro_atomic_t a_int,
int  n 
)
static

Definition at line 102 of file oro_msvc/oro_arch.h.

template<typename T >
T oro_cmpxchg ( volatile void *  ptr,
old,
_new 
)
inline

Definition at line 130 of file oro_msvc/oro_arch.h.



rtt
Author(s): RTT Developers
autogenerated on Fri Oct 25 2019 03:59:45