Hilscher netX microcontroller driver  V0.0.5.0
Documentation of the netX driver package
cmsis_gcc.h File Reference

CMSIS compiler GCC header file. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  T_UINT32
 

Macros

#define __has_builtin(x)   (0)
 
#define __ASM   __asm
 
#define __INLINE   inline
 
#define __STATIC_INLINE   static inline
 
#define __STATIC_FORCEINLINE   __attribute__((always_inline)) static inline
 
#define __NO_RETURN   __attribute__((__noreturn__))
 
#define __USED   __attribute__((used))
 
#define __WEAK   __attribute__((weak))
 
#define __PACKED   __attribute__((packed, aligned(1)))
 
#define __PACKED_STRUCT   struct __attribute__((packed, aligned(1)))
 
#define __PACKED_UNION   union __attribute__((packed, aligned(1)))
 
#define __UNALIGNED_UINT32(x)    (((struct T_UINT32 *)(x))->v)
 
#define __UNALIGNED_UINT16_WRITE(addr, val)    (void)((((struct T_UINT16_WRITE *)(void *)(addr))->v) = (val))
 
#define __UNALIGNED_UINT16_READ(addr)    (((const struct T_UINT16_READ *)(const void *)(addr))->v)
 
#define __UNALIGNED_UINT32_WRITE(addr, val)    (void)((((struct T_UINT32_WRITE *)(void *)(addr))->v) = (val))
 
#define __UNALIGNED_UINT32_READ(addr)    (((const struct T_UINT32_READ *)(const void *)(addr))->v)
 
#define __ALIGNED(x)    __attribute__((aligned(x)))
 
#define __RESTRICT   __restrict
 
#define __CMSIS_GCC_OUT_REG(r)   "=r" (r)
 
#define __CMSIS_GCC_RW_REG(r)   "+r" (r)
 
#define __CMSIS_GCC_USE_REG(r)   "r" (r)
 
#define __NOP()    __ASM volatile ("nop")
 No Operation. More...
 
#define __WFI()    __ASM volatile ("wfi")
 Wait For Interrupt. More...
 
#define __WFE()    __ASM volatile ("wfe")
 Wait For Event. More...
 
#define __SEV()    __ASM volatile ("sev")
 Send Event. More...
 
#define __BKPT(value)    __ASM volatile ("bkpt "#value)
 Breakpoint. More...
 
#define __CLZ   (uint8_t)__builtin_clz
 Count leading zeros. More...
 

Functions

__STATIC_FORCEINLINE void __enable_irq (void)
 Enable IRQ Interrupts. More...
 
__STATIC_FORCEINLINE void __disable_irq (void)
 Disable IRQ Interrupts. More...
 
__STATIC_INLINE uint32_t __get_CONTROL (void)
 Enable IRQ Interrupts. More...
 
__STATIC_INLINE void __set_CONTROL (uint32_t control)
 Set Control Register. More...
 
__STATIC_INLINE uint32_t __get_IPSR (void)
 Get IPSR Register. More...
 
__STATIC_INLINE uint32_t __get_APSR (void)
 Get APSR Register. More...
 
__STATIC_INLINE uint32_t __get_xPSR (void)
 Get xPSR Register. More...
 
__STATIC_INLINE uint32_t __get_PSP (void)
 Get Process Stack Pointer. More...
 
__STATIC_INLINE void __set_PSP (uint32_t topOfProcStack)
 Set Process Stack Pointer. More...
 
__STATIC_INLINE uint32_t __get_MSP (void)
 Get Main Stack Pointer. More...
 
__STATIC_INLINE void __set_MSP (uint32_t topOfMainStack)
 Set Main Stack Pointer. More...
 
__STATIC_INLINE uint32_t __get_PRIMASK (void)
 Get Priority Mask. More...
 
__STATIC_INLINE void __set_PRIMASK (uint32_t priMask)
 Set Priority Mask. More...
 
__STATIC_FORCEINLINE void __ISB (void)
 Instruction Synchronization Barrier. More...
 
__STATIC_FORCEINLINE void __DSB (void)
 Data Synchronization Barrier. More...
 
__STATIC_FORCEINLINE void __DMB (void)
 Data Memory Barrier. More...
 
__STATIC_FORCEINLINE uint32_t __REV (uint32_t value)
 Reverse byte order (32 bit) More...
 
__STATIC_INLINE __ASM uint32_t __REV16 (uint32_t value)
 Reverse byte order (16 bit) More...
 
__STATIC_INLINE __ASM int16_t __REVSH (int16_t value)
 Reverse byte order (16 bit) More...
 
__STATIC_FORCEINLINE uint32_t __ROR (uint32_t op1, uint32_t op2)
 Rotate Right in unsigned value (32 bit) More...
 
__STATIC_INLINE uint32_t __RBIT (uint32_t value)
 Reverse bit order of value. More...
 
__STATIC_INLINE int32_t __SSAT (int32_t val, uint32_t sat)
 Signed Saturate. More...
 
__STATIC_INLINE uint32_t __USAT (int32_t val, uint32_t sat)
 Unsigned Saturate. More...
 

Variables

__PACKED_STRUCT T_UINT16_WRITE { uint16_t v
 
__PACKED_STRUCT T_UINT16_READ { uint16_t v
 
__PACKED_STRUCT T_UINT32_WRITE { uint32_t v
 
__PACKED_STRUCT T_UINT32_READ { uint32_t v
 

Detailed Description

CMSIS compiler GCC header file.

Version
V5.0.3
Date
16. January 2018

Definition in file cmsis_gcc.h.

Macro Definition Documentation

#define __ALIGNED (   x)    __attribute__((aligned(x)))

Definition at line 111 of file cmsis_gcc.h.

#define __ASM   __asm

Definition at line 41 of file cmsis_gcc.h.

#define __has_builtin (   x)    (0)

Definition at line 36 of file cmsis_gcc.h.

#define __INLINE   inline

Definition at line 44 of file cmsis_gcc.h.

#define __NO_RETURN   __attribute__((__noreturn__))

Definition at line 53 of file cmsis_gcc.h.

#define __PACKED   __attribute__((packed, aligned(1)))

Definition at line 62 of file cmsis_gcc.h.

#define __PACKED_STRUCT   struct __attribute__((packed, aligned(1)))

Definition at line 65 of file cmsis_gcc.h.

#define __PACKED_UNION   union __attribute__((packed, aligned(1)))

Definition at line 68 of file cmsis_gcc.h.

#define __RESTRICT   __restrict

Definition at line 114 of file cmsis_gcc.h.

#define __STATIC_FORCEINLINE   __attribute__((always_inline)) static inline

Definition at line 50 of file cmsis_gcc.h.

#define __STATIC_INLINE   static inline

Definition at line 47 of file cmsis_gcc.h.

#define __UNALIGNED_UINT16_READ (   addr)    (((const struct T_UINT16_READ *)(const void *)(addr))->v)

Definition at line 92 of file cmsis_gcc.h.

#define __UNALIGNED_UINT16_WRITE (   addr,
  val 
)    (void)((((struct T_UINT16_WRITE *)(void *)(addr))->v) = (val))

Definition at line 84 of file cmsis_gcc.h.

#define __UNALIGNED_UINT32 (   x)    (((struct T_UINT32 *)(x))->v)

Definition at line 76 of file cmsis_gcc.h.

#define __UNALIGNED_UINT32_READ (   addr)    (((const struct T_UINT32_READ *)(const void *)(addr))->v)

Definition at line 108 of file cmsis_gcc.h.

#define __UNALIGNED_UINT32_WRITE (   addr,
  val 
)    (void)((((struct T_UINT32_WRITE *)(void *)(addr))->v) = (val))

Definition at line 100 of file cmsis_gcc.h.

#define __USED   __attribute__((used))

Definition at line 56 of file cmsis_gcc.h.

#define __WEAK   __attribute__((weak))

Definition at line 59 of file cmsis_gcc.h.

Variable Documentation

__PACKED_STRUCT T_UINT16_READ { uint16_t v

Definition at line 90 of file cmsis_gcc.h.

__PACKED_STRUCT T_UINT16_WRITE { uint16_t v

Definition at line 82 of file cmsis_gcc.h.

__PACKED_STRUCT T_UINT32_READ { uint32_t v

Definition at line 106 of file cmsis_gcc.h.

__PACKED_STRUCT T_UINT32_WRITE { uint32_t v

Definition at line 98 of file cmsis_gcc.h.