Subj : Re: Memory visibility and MS Interlocked instructions To : comp.programming.threads From : Alexander Terekhov Date : Sat Aug 27 2005 07:23 pm Joe Seigh wrote: > > Joe Seigh wrote: > > * The one exception I'm aware of (because I use it myself) is atomic > > load depends and we can get away with that because so much of lock-free > > depends on pointer swizzling. > > > > Speaking of that, what do most people think are its semantics? A qualified > acquire (#LoadLoad+#LoadStore) or just a qualified #LoadLoad? Unidirectional ddacq (ddhlb+ddhsb). The problem is that compiler may be inclined to turn your data dependency into control condition for which you'd need ccacq (cchlb+cchsb), not ddacq. Note also that while cchsb is implied on on all existing hardware, cchlb is not. regards, alexander. .