On Thu, 26 Sept 2024 at 18:38, Boqun Feng <boqun.feng@xxxxxxxxx> wrote: > > Note that ADDRESS_EQ() only hide first parameter, so this should be ADDRESS_EQ(b, a). Yeah, please stop making things unnecessarily complicated. Just use a barrier(). Please. Stop these stupid games until you can show why it matters. And by "why it matters" I mean "major difference in code generation", not some "it uses one more register and has to spill" kind of small detail. At this point, I'm not even convinced the whole hazard pointer approach makes sense. And you're not helping by making it more complicated than it needs to be. Linus