1cat <<EOF
2/**
3 * ${arch}${atomic}_sub_and_test - subtract value from variable and test result
4 * @i: integer value to subtract
5 * @v: pointer of type ${atomic}_t
6 *
7 * Atomically subtracts @i from @v and returns
8 * true if the result is zero, or false for all
9 * other cases.
10 */
11static __always_inline bool
12${arch}${atomic}_sub_and_test(${int} i, ${atomic}_t *v)
13{
14	return ${arch}${atomic}_sub_return(i, v) == 0;
15}
16EOF
17