summaryrefslogtreecommitdiff
path: root/scripts/atomic/fallbacks/inc_not_zero
blob: 50f2d4d48279c3f2c329591860e851054988378f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
cat <<EOF
/**
 * ${arch}${atomic}_inc_not_zero - increment unless the number is zero
 * @v: pointer of type ${atomic}_t
 *
 * Atomically increments @v by 1, if @v is non-zero.
 * Returns true if the increment was done.
 */
static __always_inline bool
${arch}${atomic}_inc_not_zero(${atomic}_t *v)
{
	return ${arch}${atomic}_add_unless(v, 1, 0);
}
EOF