cmpxchg (cdd5b5a9761fd66d17586e4f4ba6588c70e640ea) | cmpxchg (6dfee110c6cc7a6c3c1f45a07428c15820b87c1d) |
---|---|
1cat <<EOF 2/** 3 * ${class}${atomicname}() - atomic compare and exchange with ${desc_order} ordering 4 * @v: pointer to ${atomic}_t 5 * @old: ${int} value to compare with 6 * @new: ${int} value to assign 7 * 8 * If (@v == @old), atomically updates @v to @new with ${desc_order} ordering. | 1cat <<EOF 2/** 3 * ${class}${atomicname}() - atomic compare and exchange with ${desc_order} ordering 4 * @v: pointer to ${atomic}_t 5 * @old: ${int} value to compare with 6 * @new: ${int} value to assign 7 * 8 * If (@v == @old), atomically updates @v to @new with ${desc_order} ordering. |
9 * Otherwise, @v is not modified and relaxed ordering is provided. |
|
9 * 10 * ${desc_noinstr} 11 * 12 * Return: The original value of @v. 13 */ 14EOF | 10 * 11 * ${desc_noinstr} 12 * 13 * Return: The original value of @v. 14 */ 15EOF |