*/\r
static inline void RingBuffer_InitBuffer(RingBuffer_t* Buffer, uint8_t* const DataPtr, const uint16_t Size)\r
{\r
+ GCC_FORCE_POINTER_ACCESS(Buffer);\r
+\r
ATOMIC_BLOCK(ATOMIC_RESTORESTATE)\r
- {\r
- GCC_FORCE_POINTER_ACCESS(Buffer);\r
- \r
+ { \r
Buffer->In = DataPtr;\r
Buffer->Out = DataPtr;\r
Buffer->Start = &DataPtr[0];\r
* \param[in,out] Buffer Pointer to a ring buffer structure to insert into.\r
* \param[in] Data Data element to insert into the buffer.\r
*/\r
- static inline void RingBuffer_Insert(RingBuffer_t* const Buffer,\r
+ static inline void RingBuffer_Insert(RingBuffer_t* Buffer,\r
const uint8_t Data)\r
{\r
+ GCC_FORCE_POINTER_ACCESS(Buffer);\r
+\r
*Buffer->In = Data;\r
\r
if (++Buffer->In == Buffer->End)\r
*\r
* \return Next data element stored in the buffer.\r
*/\r
- static inline uint8_t RingBuffer_Remove(RingBuffer_t* const Buffer)\r
+ static inline uint8_t RingBuffer_Remove(RingBuffer_t* Buffer)\r
{\r
+ GCC_FORCE_POINTER_ACCESS(Buffer);\r
+ \r
uint8_t Data = *Buffer->Out;\r
\r
if (++Buffer->Out == Buffer->End)\r