cat << EOF
/**
 * ${atomic}_add_unless - add unless the number is already a given value
 * @v: pointer of type ${atomic}_t
 * @a: the amount to add to v...
 * @u: ...unless v is equal to u.
 *
 * Atomically adds @a to @v, if @v was not already @u.
 * Returns true if the addition was done.
 */
static inline bool
${atomic}_add_unless(${atomic}_t *v, ${int} a, ${int} u)
{
	return ${atomic}_fetch_add_unless(v, a, u) != u;
}
EOF
