Subj : Re: sync vs. eieio on powerpc To : comp.programming.threads From : Alexander Terekhov Date : Tue Mar 01 2005 01:07 pm Joe Seigh wrote: > > On Tue, 01 Mar 2005 12:04:10 +0100, Alexander Terekhov wrote: > > > > > Joe Seigh wrote: > > [...] > >> I'm guessing isync is "load/load" and "load/store". > > > > I think that in sparc terms, it is more proper to view it as > > store/load and store/store in conjunction with successful store > > conditional. > > > Actually, only in conjunction with a load reserved/store conditional > on the same memory location. Store conditional simply works in conjunction with load reserved. > And some pretty specific overall logic > at that. I.e reservation and branching. > In general, it's incorrect to characterize it as an acquire > with anything but a prior load. Nope. You can have ordinary loads in between LR and SC+isync. They are unordered (data and control dependencies aside for a moment). And think of moving isync above SC (which is a store, not a load). regards, alexander. .