1ad811070SMark Rutlandcat <<EOF 2ad811070SMark Rutland/** 3ad811070SMark Rutland * ${class}${atomicname}() - atomic decrement unless positive with ${desc_order} ordering 4ad811070SMark Rutland * @v: pointer to ${atomic}_t 5ad811070SMark Rutland * 6ad811070SMark Rutland * If (@v <= 0), atomically updates @v to (@v - 1) with ${desc_order} ordering. 7*6dfee110SMark Rutland * Otherwise, @v is not modified and relaxed ordering is provided. 8ad811070SMark Rutland * 9ad811070SMark Rutland * ${desc_noinstr} 10ad811070SMark Rutland * 11ad811070SMark Rutland * Return: @true if @v was updated, @false otherwise. 12ad811070SMark Rutland */ 13ad811070SMark RutlandEOF 14