Lines Matching refs:ptr

18 rt_atomic_t rt_hw_atomic_load(volatile rt_atomic_t *ptr);
19 void rt_hw_atomic_store(volatile rt_atomic_t *ptr, rt_atomic_t val);
20 rt_atomic_t rt_hw_atomic_add(volatile rt_atomic_t *ptr, rt_atomic_t val);
21 rt_atomic_t rt_hw_atomic_sub(volatile rt_atomic_t *ptr, rt_atomic_t val);
22 rt_atomic_t rt_hw_atomic_and(volatile rt_atomic_t *ptr, rt_atomic_t val);
23 rt_atomic_t rt_hw_atomic_or(volatile rt_atomic_t *ptr, rt_atomic_t val);
24 rt_atomic_t rt_hw_atomic_xor(volatile rt_atomic_t *ptr, rt_atomic_t val);
25 rt_atomic_t rt_hw_atomic_exchange(volatile rt_atomic_t *ptr, rt_atomic_t val);
26 void rt_hw_atomic_flag_clear(volatile rt_atomic_t *ptr);
27 rt_atomic_t rt_hw_atomic_flag_test_and_set(volatile rt_atomic_t *ptr);
28 rt_atomic_t rt_hw_atomic_compare_exchange_strong(volatile rt_atomic_t *ptr, rt_atomic_t *expected, …
33 #define rt_atomic_load(ptr) atomic_load(ptr) argument
34 #define rt_atomic_store(ptr, v) atomic_store(ptr, v) argument
35 #define rt_atomic_add(ptr, v) atomic_fetch_add(ptr, v) argument
36 #define rt_atomic_sub(ptr, v) atomic_fetch_sub(ptr, v) argument
37 #define rt_atomic_and(ptr, v) atomic_fetch_and(ptr, v) argument
38 #define rt_atomic_or(ptr, v) atomic_fetch_or(ptr, v) argument
39 #define rt_atomic_xor(ptr, v) atomic_fetch_xor(ptr, v) argument
40 #define rt_atomic_exchange(ptr, v) atomic_exchange(ptr, v) argument
41 #define rt_atomic_flag_clear(ptr) atomic_flag_clear(ptr) argument
42 #define rt_atomic_flag_test_and_set(ptr) atomic_flag_test_and_set(ptr) argument
43 #define rt_atomic_compare_exchange_strong(ptr, v,des) atomic_compare_exchange_strong(ptr, v ,des) argument
49 #define rt_atomic_load(ptr) rt_hw_atomic_load(ptr) argument
50 #define rt_atomic_store(ptr, v) rt_hw_atomic_store(ptr, v) argument
51 #define rt_atomic_add(ptr, v) rt_hw_atomic_add(ptr, v) argument
52 #define rt_atomic_sub(ptr, v) rt_hw_atomic_sub(ptr, v) argument
53 #define rt_atomic_and(ptr, v) rt_hw_atomic_and(ptr, v) argument
54 #define rt_atomic_or(ptr, v) rt_hw_atomic_or(ptr, v) argument
55 #define rt_atomic_xor(ptr, v) rt_hw_atomic_xor(ptr, v) argument
56 #define rt_atomic_exchange(ptr, v) rt_hw_atomic_exchange(ptr, v) argument
57 #define rt_atomic_flag_clear(ptr) rt_hw_atomic_flag_clear(ptr) argument
58 #define rt_atomic_flag_test_and_set(ptr) rt_hw_atomic_flag_test_and_set(ptr) argument
59 #define rt_atomic_compare_exchange_strong(ptr, v,des) rt_hw_atomic_compare_exchange_strong(ptr, v ,… argument
63 #define rt_atomic_load(ptr) rt_soft_atomic_load(ptr) argument
64 #define rt_atomic_store(ptr, v) rt_soft_atomic_store(ptr, v) argument
65 #define rt_atomic_add(ptr, v) rt_soft_atomic_add(ptr, v) argument
66 #define rt_atomic_sub(ptr, v) rt_soft_atomic_sub(ptr, v) argument
67 #define rt_atomic_and(ptr, v) rt_soft_atomic_and(ptr, v) argument
68 #define rt_atomic_or(ptr, v) rt_soft_atomic_or(ptr, v) argument
69 #define rt_atomic_xor(ptr, v) rt_soft_atomic_xor(ptr, v) argument
70 #define rt_atomic_exchange(ptr, v) rt_soft_atomic_exchange(ptr, v) argument
71 #define rt_atomic_flag_clear(ptr) rt_soft_atomic_flag_clear(ptr) argument
72 #define rt_atomic_flag_test_and_set(ptr) rt_soft_atomic_flag_test_and_set(ptr) argument
73 #define rt_atomic_compare_exchange_strong(ptr, v,des) rt_soft_atomic_compare_exchange_strong(ptr, v… argument
75 rt_inline rt_atomic_t rt_soft_atomic_exchange(volatile rt_atomic_t *ptr, rt_atomic_t val) in rt_soft_atomic_exchange() argument
80 temp = *ptr; in rt_soft_atomic_exchange()
81 *ptr = val; in rt_soft_atomic_exchange()
86 rt_inline rt_atomic_t rt_soft_atomic_add(volatile rt_atomic_t *ptr, rt_atomic_t val) in rt_soft_atomic_add() argument
91 temp = *ptr; in rt_soft_atomic_add()
92 *ptr += val; in rt_soft_atomic_add()
97 rt_inline rt_atomic_t rt_soft_atomic_sub(volatile rt_atomic_t *ptr, rt_atomic_t val) in rt_soft_atomic_sub() argument
102 temp = *ptr; in rt_soft_atomic_sub()
103 *ptr -= val; in rt_soft_atomic_sub()
108 rt_inline rt_atomic_t rt_soft_atomic_xor(volatile rt_atomic_t *ptr, rt_atomic_t val) in rt_soft_atomic_xor() argument
113 temp = *ptr; in rt_soft_atomic_xor()
114 *ptr = (*ptr) ^ val; in rt_soft_atomic_xor()
119 rt_inline rt_atomic_t rt_soft_atomic_and(volatile rt_atomic_t *ptr, rt_atomic_t val) in rt_soft_atomic_and() argument
124 temp = *ptr; in rt_soft_atomic_and()
125 *ptr = (*ptr) & val; in rt_soft_atomic_and()
130 rt_inline rt_atomic_t rt_soft_atomic_or(volatile rt_atomic_t *ptr, rt_atomic_t val) in rt_soft_atomic_or() argument
135 temp = *ptr; in rt_soft_atomic_or()
136 *ptr = (*ptr) | val; in rt_soft_atomic_or()
141 rt_inline rt_atomic_t rt_soft_atomic_load(volatile rt_atomic_t *ptr) in rt_soft_atomic_load() argument
146 temp = *ptr; in rt_soft_atomic_load()
151 rt_inline void rt_soft_atomic_store(volatile rt_atomic_t *ptr, rt_atomic_t val) in rt_soft_atomic_store() argument
155 *ptr = val; in rt_soft_atomic_store()
159 rt_inline rt_atomic_t rt_soft_atomic_flag_test_and_set(volatile rt_atomic_t *ptr) in rt_soft_atomic_flag_test_and_set() argument
164 if (*ptr == 0) in rt_soft_atomic_flag_test_and_set()
167 *ptr = 1; in rt_soft_atomic_flag_test_and_set()
175 rt_inline void rt_soft_atomic_flag_clear(volatile rt_atomic_t *ptr) in rt_soft_atomic_flag_clear() argument
179 *ptr = 0; in rt_soft_atomic_flag_clear()
204 rt_inline rt_bool_t rt_atomic_dec_and_test(volatile rt_atomic_t *ptr) in rt_atomic_dec_and_test() argument
206 return rt_atomic_sub(ptr, 1) == 1; in rt_atomic_dec_and_test()
209 rt_inline rt_atomic_t rt_atomic_fetch_add_unless(volatile rt_atomic_t *ptr, rt_atomic_t a, rt_atomi… in rt_atomic_fetch_add_unless() argument
211 rt_atomic_t c = rt_atomic_load(ptr); in rt_atomic_fetch_add_unless()
218 } while (!rt_atomic_compare_exchange_strong(ptr, &c, c + a)); in rt_atomic_fetch_add_unless()
223 rt_inline rt_bool_t rt_atomic_add_unless(volatile rt_atomic_t *ptr, rt_atomic_t a, rt_atomic_t u) in rt_atomic_add_unless() argument
225 return rt_atomic_fetch_add_unless(ptr, a, u) != u; in rt_atomic_add_unless()
228 rt_inline rt_bool_t rt_atomic_inc_not_zero(volatile rt_atomic_t *ptr) in rt_atomic_inc_not_zero() argument
230 return rt_atomic_add_unless(ptr, 1, 0); in rt_atomic_inc_not_zero()