From 9f95ff5b6ba01db09552b84a0ab79607060a2666 Mon Sep 17 00:00:00 2001 From: Ali Labbene Date: Wed, 11 Dec 2019 08:59:21 +0100 Subject: Official ARM version: v5.4.0 Add CMSIS V5.4.0, please refer to index.html available under \docs folder. Note: content of \CMSIS\Core\Include has been copied under \Include to keep the same structure used in existing projects, and thus avoid projects mass update Note: the following components have been removed from ARM original delivery (as not used in ST packages) - CMSIS_EW2018.pdf - .gitattributes - .gitignore - \Device - \CMSIS - \CoreValidation - \DAP - \Documentation - \DoxyGen - \Driver - \Pack - \RTOS\CMSIS_RTOS_Tutorial.pdf - \RTOS\RTX - \RTOS\Template - \RTOS2\RTX - \Utilities - All ARM/GCC projects files are deleted from \DSP, \RTOS and \RTOS2 Change-Id: Ia026c3f0f0d016627a4fb5a9032852c33d24b4d3 --- .../group__CMSIS__Core__InstructionInterface.html | 464 +++++++++++++++++++++ 1 file changed, 464 insertions(+) create mode 100644 docs/Core_A/html/group__CMSIS__Core__InstructionInterface.html (limited to 'docs/Core_A/html/group__CMSIS__Core__InstructionInterface.html') diff --git a/docs/Core_A/html/group__CMSIS__Core__InstructionInterface.html b/docs/Core_A/html/group__CMSIS__Core__InstructionInterface.html new file mode 100644 index 0000000..d2e61a1 --- /dev/null +++ b/docs/Core_A/html/group__CMSIS__Core__InstructionInterface.html @@ -0,0 +1,464 @@ + + + + + +Intrinsic Functions +CMSIS-Core (Cortex-A): Intrinsic Functions + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-Core (Cortex-A) +  Version 1.1.2 +
+
CMSIS-Core support for Cortex-A processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Intrinsic Functions
+
+
+ +

Functions that generate specific Cortex-A CPU Instructions. +More...

+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Macros

#define __NOP   __nop
 No Operation. More...
 
#define __WFI   __wfi
 Wait For Interrupt. More...
 
#define __WFE   __wfe
 Wait For Event. More...
 
#define __SEV   __sev
 Send Event. More...
 
#define __ISB()
 Instruction Synchronization Barrier. More...
 
#define __DSB()
 Data Synchronization Barrier. More...
 
#define __DMB()
 Data Memory Barrier. More...
 
#define __BKPT(value)   __breakpoint(value)
 Breakpoint. More...
 
+ + + + + + + + + + + + + + + + + + + +

+Functions

uint32_t __REV (uint32_t value)
 Reverse byte order (32 bit) More...
 
uint16_t __REV16 (uint16_t value)
 Reverse byte order (16 bit) More...
 
int32_t __REVSH (int32_t value)
 Reverse byte order (16 bit) More...
 
uint32_t __ROR (uint32_t op1, uint32_t op2)
 Rotate Right in unsigned value (32 bit) More...
 
uint32_t __RBIT (uint32_t value)
 Reverse bit order of value. More...
 
uint8_t __CLZ (uint32_t value)
 Count leading zeros. More...
 
+

Description

+

Macro Definition Documentation

+ +
+
+ + + + + + + + +
#define __BKPT( value)   __breakpoint(value)
+
+

Causes the processor to enter Debug state. Debug tools can use this to investigate system state when the instruction at a particular address is reached.

+
Parameters
+ + +
[in]valueis ignored by the processor. If required, a debugger can use it to store additional information about the breakpoint.
+
+
+ +
+
+ +
+
+ + + + + + + +
#define __DMB()
+
+

Ensures the apparent order of the explicit memory operations before and after the instruction, without ensuring their completion.

+ +
+
+ +
+
+ + + + + + + +
#define __DSB()
+
+

Acts as a special kind of Data Memory Barrier. It completes when all explicit memory accesses before this instruction complete.

+ +
+
+ +
+
+ + + + + + + +
#define __ISB()
+
+

Instruction Synchronization Barrier flushes the pipeline in the processor, so that all instructions following the ISB are fetched from cache or memory, after the instruction has been completed.

+ +
+
+ +
+
+ + + + +
#define __NOP   __nop
+
+

No Operation does nothing. This instruction can be used for code alignment purposes.

+ +
+
+ +
+
+ + + + +
#define __SEV   __sev
+
+

Send Event is a hint instruction. It causes an event to be signaled to the CPU.

+ +
+
+ +
+
+ + + + +
#define __WFE   __wfe
+
+

Wait For Event is a hint instruction that permits the processor to enter

+ +
+
+ +
+
+ + + + +
#define __WFI   __wfi
+
+

Wait For Interrupt is a hint instruction that suspends execution until one of a number of events occurs.

+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + +
uint8_t __CLZ (uint32_t value)
+
+

Counts the number of leading zeros of a data value.

+
Parameters
+ + +
[in]valueValue to count the leading zeros
+
+
+
Returns
number of leading zeros in value
+ +
+
+ +
+
+ + + + + + + + +
uint32_t __RBIT (uint32_t value)
+
+

Reverses the bit order of the given value.

+
Parameters
+ + +
[in]valueValue to reverse
+
+
+
Returns
Reversed value
+ +
+
+ +
+
+ + + + + + + + +
uint32_t __REV (uint32_t value)
+
+

Reverses the byte order in unsigned integer value. For example, 0x12345678 becomes 0x78563412.

+
Parameters
+ + +
[in]valueValue to reverse
+
+
+
Returns
Reversed value
+ +
+
+ +
+
+ + + + + + + + +
uint16_t __REV16 (uint16_t value)
+
+

Reverses the byte order within each halfword of a word. For example, 0x12345678 becomes 0x34127856.

+
Parameters
+ + +
[in]valueValue to reverse
+
+
+
Returns
Reversed value
+ +
+
+ +
+
+ + + + + + + + +
int32_t __REVSH (int32_t value)
+
+

Reverses the byte order in a 16-bit value and returns the signed 16-bit result. For example, 0x0080 becomes 0x8000.

+
Parameters
+ + +
[in]valueValue to reverse
+
+
+
Returns
Reversed value
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __ROR (uint32_t op1,
uint32_t op2 
)
+
+

Rotate Right (immediate) provides the value of the contents of a register rotated by a variable number of bits.

+
Parameters
+ + + +
[in]op1Value to rotate
[in]op2Number of Bits to rotate
+
+
+
Returns
Rotated value
+ +
+
+
+
+ + + + -- cgit