http://med.ngntfwmwovvku6eqi7dzzgzv2wzlvq2cqtqha7ccgzub2xnivsuxnuyd.onion/@tylerneely/fear-and-loathing-in-lock-free-programming-7158b1cdd50c
(edit: x86_64 actually has a 128-bit CAS , although it’s not available from languages like Go, Java, or Rust. Thanks robgssp !) 32-bit architectures often have a double-word “DCAS” that can work on 64 bits. But one word is usually sufficient for use with pointers, counters, bit-packed headers, and all kinds of interesting stuff.
2 similar results skipped