Lines Matching refs:i
20 #define ATOMIC_INIT(i) { (i) } argument
23 #define atomic_set(v, i) (((v)->counter) = i) argument
26 static inline int __atomic_##op##_return(int i, atomic_t *v) \
38 : "m" (v->counter), #asm_con (i) \
60 #define IS_21BIT_CONST(i) \ in ATOMIC_OP_RETURN() argument
61 (__builtin_constant_p(i) && ((i) >= -1048575) && ((i) <= 1048576)) in ATOMIC_OP_RETURN()
70 static inline int atomic_add_return(int i, atomic_t *v) in ATOMIC_OP_RETURN()
72 if (IS_21BIT_CONST(i)) in ATOMIC_OP_RETURN()
73 return __atomic_sub_return(-i, v); in ATOMIC_OP_RETURN()
75 return __atomic_add_return(i, v); in ATOMIC_OP_RETURN()
85 static inline int atomic_sub_return(int i, atomic_t *v) in atomic_sub_return() argument
87 if (IS_21BIT_CONST(i)) in atomic_sub_return()
88 return __atomic_sub_return(i, v); in atomic_sub_return()
90 return __atomic_add_return(-i, v); in atomic_sub_return()
149 static inline int atomic_sub_if_positive(int i, atomic_t *v) in atomic_sub_if_positive() argument
163 : "m"(v->counter), "ir"(i) in atomic_sub_if_positive()
172 #define atomic_sub(i, v) (void)atomic_sub_return(i, v) argument
173 #define atomic_add(i, v) (void)atomic_add_return(i, v) argument
180 #define atomic_sub_and_test(i, v) (atomic_sub_return(i, v) == 0) argument
183 #define atomic_add_negative(i, v) (atomic_add_return(i, v) < 0) argument