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