cmpxchg 418 B

123456789101112131415
  1. cat <<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.
  10. *
  11. * ${desc_noinstr}
  12. *
  13. * Return: The original value of @v.
  14. */
  15. EOF