162306a36Sopenharmony_cicat <<EOF
262306a36Sopenharmony_ci	${int} r, o = *old;
362306a36Sopenharmony_ci	r = raw_${atomic}_cmpxchg${order}(v, o, new);
462306a36Sopenharmony_ci	if (unlikely(r != o))
562306a36Sopenharmony_ci		*old = r;
662306a36Sopenharmony_ci	return likely(r == o);
762306a36Sopenharmony_ciEOF
8