Lines Matching refs:addr

70 #define _SDK_ATOMIC_LOCAL_OPS_1BYTE(addr, val, ops) \  argument
73 (val) = __LDREXB(addr); \
75 } while (0UL != __STREXB((val), (addr)))
77 #define _SDK_ATOMIC_LOCAL_OPS_2BYTE(addr, val, ops) \ argument
80 (val) = __LDREXH(addr); \
82 } while (0UL != __STREXH((val), (addr)))
84 #define _SDK_ATOMIC_LOCAL_OPS_4BYTE(addr, val, ops) \ argument
87 (val) = __LDREXW(addr); \
89 } while (0UL != __STREXW((val), (addr)))
91 static inline void _SDK_AtomicLocalAdd1Byte(volatile uint8_t *addr, uint8_t val) in _SDK_AtomicLocalAdd1Byte() argument
95 _SDK_ATOMIC_LOCAL_OPS_1BYTE(addr, s_val, s_val += val); in _SDK_AtomicLocalAdd1Byte()
98 static inline void _SDK_AtomicLocalAdd2Byte(volatile uint16_t *addr, uint16_t val) in _SDK_AtomicLocalAdd2Byte() argument
102 _SDK_ATOMIC_LOCAL_OPS_2BYTE(addr, s_val, s_val += val); in _SDK_AtomicLocalAdd2Byte()
105 static inline void _SDK_AtomicLocalAdd4Byte(volatile uint32_t *addr, uint32_t val) in _SDK_AtomicLocalAdd4Byte() argument
109 _SDK_ATOMIC_LOCAL_OPS_4BYTE(addr, s_val, s_val += val); in _SDK_AtomicLocalAdd4Byte()
112 static inline void _SDK_AtomicLocalSub1Byte(volatile uint8_t *addr, uint8_t val) in _SDK_AtomicLocalSub1Byte() argument
116 _SDK_ATOMIC_LOCAL_OPS_1BYTE(addr, s_val, s_val -= val); in _SDK_AtomicLocalSub1Byte()
119 static inline void _SDK_AtomicLocalSub2Byte(volatile uint16_t *addr, uint16_t val) in _SDK_AtomicLocalSub2Byte() argument
123 _SDK_ATOMIC_LOCAL_OPS_2BYTE(addr, s_val, s_val -= val); in _SDK_AtomicLocalSub2Byte()
126 static inline void _SDK_AtomicLocalSub4Byte(volatile uint32_t *addr, uint32_t val) in _SDK_AtomicLocalSub4Byte() argument
130 _SDK_ATOMIC_LOCAL_OPS_4BYTE(addr, s_val, s_val -= val); in _SDK_AtomicLocalSub4Byte()
133 static inline void _SDK_AtomicLocalSet1Byte(volatile uint8_t *addr, uint8_t bits) in _SDK_AtomicLocalSet1Byte() argument
137 _SDK_ATOMIC_LOCAL_OPS_1BYTE(addr, s_val, s_val |= bits); in _SDK_AtomicLocalSet1Byte()
140 static inline void _SDK_AtomicLocalSet2Byte(volatile uint16_t *addr, uint16_t bits) in _SDK_AtomicLocalSet2Byte() argument
144 _SDK_ATOMIC_LOCAL_OPS_2BYTE(addr, s_val, s_val |= bits); in _SDK_AtomicLocalSet2Byte()
147 static inline void _SDK_AtomicLocalSet4Byte(volatile uint32_t *addr, uint32_t bits) in _SDK_AtomicLocalSet4Byte() argument
151 _SDK_ATOMIC_LOCAL_OPS_4BYTE(addr, s_val, s_val |= bits); in _SDK_AtomicLocalSet4Byte()
154 static inline void _SDK_AtomicLocalClear1Byte(volatile uint8_t *addr, uint8_t bits) in _SDK_AtomicLocalClear1Byte() argument
158 _SDK_ATOMIC_LOCAL_OPS_1BYTE(addr, s_val, s_val &= ~bits); in _SDK_AtomicLocalClear1Byte()
161 static inline void _SDK_AtomicLocalClear2Byte(volatile uint16_t *addr, uint16_t bits) in _SDK_AtomicLocalClear2Byte() argument
165 _SDK_ATOMIC_LOCAL_OPS_2BYTE(addr, s_val, s_val &= ~bits); in _SDK_AtomicLocalClear2Byte()
168 static inline void _SDK_AtomicLocalClear4Byte(volatile uint32_t *addr, uint32_t bits) in _SDK_AtomicLocalClear4Byte() argument
172 _SDK_ATOMIC_LOCAL_OPS_4BYTE(addr, s_val, s_val &= ~bits); in _SDK_AtomicLocalClear4Byte()
175 static inline void _SDK_AtomicLocalToggle1Byte(volatile uint8_t *addr, uint8_t bits) in _SDK_AtomicLocalToggle1Byte() argument
179 _SDK_ATOMIC_LOCAL_OPS_1BYTE(addr, s_val, s_val ^= bits); in _SDK_AtomicLocalToggle1Byte()
182 static inline void _SDK_AtomicLocalToggle2Byte(volatile uint16_t *addr, uint16_t bits) in _SDK_AtomicLocalToggle2Byte() argument
186 _SDK_ATOMIC_LOCAL_OPS_2BYTE(addr, s_val, s_val ^= bits); in _SDK_AtomicLocalToggle2Byte()
189 static inline void _SDK_AtomicLocalToggle4Byte(volatile uint32_t *addr, uint32_t bits) in _SDK_AtomicLocalToggle4Byte() argument
193 _SDK_ATOMIC_LOCAL_OPS_4BYTE(addr, s_val, s_val ^= bits); in _SDK_AtomicLocalToggle4Byte()
196 static inline void _SDK_AtomicLocalClearAndSet1Byte(volatile uint8_t *addr, uint8_t clearBits, uint… in _SDK_AtomicLocalClearAndSet1Byte() argument
200 _SDK_ATOMIC_LOCAL_OPS_1BYTE(addr, s_val, s_val = (s_val & ~clearBits) | setBits); in _SDK_AtomicLocalClearAndSet1Byte()
203 static inline void _SDK_AtomicLocalClearAndSet2Byte(volatile uint16_t *addr, uint16_t clearBits, ui… in _SDK_AtomicLocalClearAndSet2Byte() argument
207 _SDK_ATOMIC_LOCAL_OPS_2BYTE(addr, s_val, s_val = (s_val & ~clearBits) | setBits); in _SDK_AtomicLocalClearAndSet2Byte()
210 static inline void _SDK_AtomicLocalClearAndSet4Byte(volatile uint32_t *addr, uint32_t clearBits, ui… in _SDK_AtomicLocalClearAndSet4Byte() argument
214 _SDK_ATOMIC_LOCAL_OPS_4BYTE(addr, s_val, s_val = (s_val & ~clearBits) | setBits); in _SDK_AtomicLocalClearAndSet4Byte()
217 #define SDK_ATOMIC_LOCAL_ADD(addr, val) … argument
218 …((1UL == sizeof(*(addr))) ? …
219 …_SDK_AtomicLocalAdd1Byte((volatile uint8_t *)(volatile void *)(addr), (uint8_t)(val)) : …
220 …((2UL == sizeof(*(addr))) ? _SDK_AtomicLocalAdd2Byte((volatile uint16_t *)(volatile void *)(addr),…
221 … _SDK_AtomicLocalAdd4Byte((volatile uint32_t *)(volatile void *)(addr), (uint32_t)(val))))
223 #define SDK_ATOMIC_LOCAL_SUB(addr, val) … argument
224 …((1UL == sizeof(*(addr))) ? …
225 …_SDK_AtomicLocalSub1Byte((volatile uint8_t *)(volatile void *)(addr), (uint8_t)(val)) : …
226 …((2UL == sizeof(*(addr))) ? _SDK_AtomicLocalSub2Byte((volatile uint16_t *)(volatile void *)(addr),…
227 … _SDK_AtomicLocalSub4Byte((volatile uint32_t *)(volatile void *)(addr), (uint32_t)(val))))
229 #define SDK_ATOMIC_LOCAL_SET(addr, bits) … argument
230 …((1UL == sizeof(*(addr))) ? …
231 …_SDK_AtomicLocalSet1Byte((volatile uint8_t *)(volatile void *)(addr), (uint8_t)(bits)) : …
232 …((2UL == sizeof(*(addr))) ? _SDK_AtomicLocalSet2Byte((volatile uint16_t *)(volatile void *)(addr),…
233 … _SDK_AtomicLocalSet4Byte((volatile uint32_t *)(volatile void *)(addr), (uint32_t)(bits))))
235 #define SDK_ATOMIC_LOCAL_CLEAR(addr, bits) … argument
236 …((1UL == sizeof(*(addr))) ? …
237 …_SDK_AtomicLocalClear1Byte((volatile uint8_t *)(volatile void *)(addr), (uint8_t)(bits)) : \
238 …((2UL == sizeof(*(addr))) ? \
239 … _SDK_AtomicLocalClear2Byte((volatile uint16_t *)(volatile void *)(addr), (uint16_t)(bits)) : \
240 … _SDK_AtomicLocalClear4Byte((volatile uint32_t *)(volatile void *)(addr), (uint32_t)(bits))))
242 #define SDK_ATOMIC_LOCAL_TOGGLE(addr, bits) … argument
243 …((1UL == sizeof(*(addr))) ? …
244 …_SDK_AtomicLocalToggle1Byte((volatile uint8_t *)(volatile void *)(addr), (uint8_t)(bits)) : …
245 …((2UL == sizeof(*(addr))) ? …
246 … _SDK_AtomicLocalToggle2Byte((volatile uint16_t *)(volatile void *)(addr), (uint16_t)(bits)) : \
247 … _SDK_AtomicLocalToggle4Byte((volatile uint32_t *)(volatile void *)(addr), (uint32_t)(bits))))
249 #define SDK_ATOMIC_LOCAL_CLEAR_AND_SET(addr, clearBits, setBits) … argument
250 …((1UL == sizeof(*(addr))) ? …
251 …_SDK_AtomicLocalClearAndSet1Byte((volatile uint8_t *)(volatile void *)(addr), (uint8_t)(clearBits)…
252 …((2UL == sizeof(*(addr))) ? …
253 …_SDK_AtomicLocalClearAndSet2Byte((volatile uint16_t *)(volatile void *)(addr), (uint16_t)(clearBit…
254 …_SDK_AtomicLocalClearAndSet4Byte((volatile uint32_t *)(volatile void *)(addr), (uint32_t)(clearBit…
257 #define SDK_ATOMIC_LOCAL_ADD(addr, val) \ argument
262 *(addr) += (val); \
266 #define SDK_ATOMIC_LOCAL_SUB(addr, val) \ argument
271 *(addr) -= (val); \
275 #define SDK_ATOMIC_LOCAL_SET(addr, bits) \ argument
280 *(addr) |= (bits); \
284 #define SDK_ATOMIC_LOCAL_CLEAR(addr, bits) \ argument
289 *(addr) &= ~(bits); \
293 #define SDK_ATOMIC_LOCAL_TOGGLE(addr, bits) \ argument
298 *(addr) ^= (bits); \
302 #define SDK_ATOMIC_LOCAL_CLEAR_AND_SET(addr, clearBits, setBits) \ argument
307 *(addr) = (*(addr) & ~(clearBits)) | (setBits); \