1*ace9bad4SMark Rutlandcat <<EOF
2*ace9bad4SMark Rutland/**
3*ace9bad4SMark Rutland * ${atomic}_add_negative - add and test if negative
4*ace9bad4SMark Rutland * @i: integer value to add
5*ace9bad4SMark Rutland * @v: pointer of type ${atomic}_t
6*ace9bad4SMark Rutland *
7*ace9bad4SMark Rutland * Atomically adds @i to @v and returns true
8*ace9bad4SMark Rutland * if the result is negative, or false when
9*ace9bad4SMark Rutland * result is greater than or equal to zero.
10*ace9bad4SMark Rutland */
11*ace9bad4SMark Rutlandstatic inline bool
12*ace9bad4SMark Rutland${atomic}_add_negative(${int} i, ${atomic}_t *v)
13*ace9bad4SMark Rutland{
14*ace9bad4SMark Rutland	return ${atomic}_add_return(i, v) < 0;
15*ace9bad4SMark Rutland}
16*ace9bad4SMark RutlandEOF
17