Subj : Re: Memory visibility and MS Interlocked instructions To : comp.programming.threads From : Alexander Terekhov Date : Thu Sep 01 2005 08:23 pm Sean Kelly wrote: [...] > > > I'll admit that until this I was > > > beginning to think that only msync.acq stores needed a LOCK. > > > > That's not true either. > > Help me out here :) It's been established that loads can be migrated > above preceding stores if no membars are present, so LOCK must be used > in some cases to prevent this, correct? No must. MFENCE is probably better. ;-) I've simply misread what you wrote thinking that you mean acquire load (in Joe's Universum with totally out-of-order loads on IA32, it does need to LOCK something, fences aside for a moment ;-) ), not atomic's store(T, msync::acq_t). regards, alexander. .