10 lines · 164 B · Text
RawDownload
cat <<EOF	${int} c = raw_${atomic}_read(v); 	do {		if (unlikely(c > 0))			return false;	} while (!raw_${atomic}_try_cmpxchg(v, &c, c - 1)); 	return true;EOF