Macros | |
#define | __get_CP(cp, op1, Rt, CRn, CRm, op2) __ASM volatile("MRC p" # cp ", " # op1 ", %0, c" # CRn ", c" # CRm ", " # op2 : "=r" (Rt) : : "memory" ) |
#define | __set_CP(cp, op1, Rt, CRn, CRm, op2) __ASM volatile("MCR p" # cp ", " # op1 ", %0, c" # CRn ", c" # CRm ", " # op2 : : "r" (Rt) : "memory" ) |
#define | __get_CP64(cp, op1, Rt, CRm) __ASM volatile("MRRC p" # cp ", " # op1 ", %Q0, %R0, c" # CRm : "=r" (Rt) : : "memory" ) |
#define | __set_CP64(cp, op1, Rt, CRm) __ASM volatile("MCRR p" # cp ", " # op1 ", %Q0, %R0, c" # CRm : : "r" (Rt) : "memory" ) |
Functions | |
__STATIC_FORCEINLINE void | __STRBT (uint8_t value, volatile uint8_t *ptr) |
STRT Unprivileged (8 bit) | |
__STATIC_FORCEINLINE void | __STRHT (uint16_t value, volatile uint16_t *ptr) |
STRT Unprivileged (16 bit) | |
__STATIC_FORCEINLINE void | __STRT (uint32_t value, volatile uint32_t *ptr) |
STRT Unprivileged (32 bit) | |
__STATIC_FORCEINLINE uint32_t | __get_CPSR (void) |
Get CPSR Register. | |
__STATIC_FORCEINLINE void | __set_CPSR (uint32_t cpsr) |
Set CPSR Register. | |
__STATIC_FORCEINLINE uint32_t | __get_mode (void) |
Get Mode. | |
__STATIC_FORCEINLINE void | __set_mode (uint32_t mode) |
Set Mode. | |
__STATIC_FORCEINLINE uint32_t | __get_SP (void) |
Get Stack Pointer. | |
__STATIC_FORCEINLINE void | __set_SP (uint32_t stack) |
Set Stack Pointer. | |
__STATIC_FORCEINLINE uint32_t | __get_SP_usr (void) |
Get USR/SYS Stack Pointer. | |
__STATIC_FORCEINLINE void | __set_SP_usr (uint32_t topOfProcStack) |
Set USR/SYS Stack Pointer. | |
__STATIC_FORCEINLINE uint32_t | __get_FPEXC (void) |
Get FPEXC. | |
__STATIC_FORCEINLINE void | __set_FPEXC (uint32_t fpexc) |
Set FPEXC. | |
__STATIC_INLINE void | __FPU_Enable (void) |
Enable Floating Point Unit. | |
#define __get_CP | ( | cp, | |
op1, | |||
Rt, | |||
CRn, | |||
CRm, | |||
op2 | |||
) | __ASM volatile("MRC p" # cp ", " # op1 ", %0, c" # CRn ", c" # CRm ", " # op2 : "=r" (Rt) : : "memory" ) |
#define __get_CP64 | ( | cp, | |
op1, | |||
Rt, | |||
CRm | |||
) | __ASM volatile("MRRC p" # cp ", " # op1 ", %Q0, %R0, c" # CRm : "=r" (Rt) : : "memory" ) |
#define __set_CP | ( | cp, | |
op1, | |||
Rt, | |||
CRn, | |||
CRm, | |||
op2 | |||
) | __ASM volatile("MCR p" # cp ", " # op1 ", %0, c" # CRn ", c" # CRm ", " # op2 : : "r" (Rt) : "memory" ) |
#define __set_CP64 | ( | cp, | |
op1, | |||
Rt, | |||
CRm | |||
) | __ASM volatile("MCRR p" # cp ", " # op1 ", %Q0, %R0, c" # CRm : : "r" (Rt) : "memory" ) |
__STATIC_FORCEINLINE void __STRBT | ( | uint8_t | value, |
volatile uint8_t * | ptr | ||
) |
STRT Unprivileged (8 bit)
Executes a Unprivileged STRT instruction for 8 bit values.
[in] | value | Value to store |
[in] | ptr | Pointer to location |
__STATIC_FORCEINLINE void __STRHT | ( | uint16_t | value, |
volatile uint16_t * | ptr | ||
) |
STRT Unprivileged (16 bit)
Executes a Unprivileged STRT instruction for 16 bit values.
[in] | value | Value to store |
[in] | ptr | Pointer to location |
__STATIC_FORCEINLINE void __STRT | ( | uint32_t | value, |
volatile uint32_t * | ptr | ||
) |
STRT Unprivileged (32 bit)
Executes a Unprivileged STRT instruction for 32 bit values.
[in] | value | Value to store |
[in] | ptr | Pointer to location |