18c2ecf20Sopenharmony_cicat <<EOF 28c2ecf20Sopenharmony_ci/** 38c2ecf20Sopenharmony_ci * ${arch}${atomic}_inc_and_test - increment and test 48c2ecf20Sopenharmony_ci * @v: pointer of type ${atomic}_t 58c2ecf20Sopenharmony_ci * 68c2ecf20Sopenharmony_ci * Atomically increments @v by 1 78c2ecf20Sopenharmony_ci * and returns true if the result is zero, or false for all 88c2ecf20Sopenharmony_ci * other cases. 98c2ecf20Sopenharmony_ci */ 108c2ecf20Sopenharmony_cistatic __always_inline bool 118c2ecf20Sopenharmony_ci${arch}${atomic}_inc_and_test(${atomic}_t *v) 128c2ecf20Sopenharmony_ci{ 138c2ecf20Sopenharmony_ci return ${arch}${atomic}_inc_return(v) == 0; 148c2ecf20Sopenharmony_ci} 158c2ecf20Sopenharmony_ciEOF 16