Hacker News new | ask | show | jobs
by swagmoney1606 529 days ago
>Perhaps most surprisingly, this includes even the case of potentially concurrent writes of the same value by different threads.

Can someone explain to me how this is possible?

2 comments

Section 2.4 gives a concrete example, though there are some asterisks. The example is one where a compiler rewrites something like `while (...) x++;` to put `x` in a register: `int reg = x; while (...) reg++; x = reg`. The author reports this is an optimization GCC was observed doing, and means you can have a read-writeback even when the while condition is false to begin with. If this optimization appears interleaved with identical writes then you have problems.
Go read section 2.4.