[cpp-threads] [Javamemorymodel-discussion] there's a happens-before orderhere. right?

Paul E. McKenney paulmck at linux.vnet.ibm.com
Tue Dec 16 18:20:18 GMT 2008


On Tue, Dec 16, 2008 at 07:02:28PM +0100, Alexander Terekhov wrote:
> On Tue, Dec 16, 2008 at 6:28 PM, Paul E. McKenney
> <paulmck at linux.vnet.ibm.com> wrote:
> > On Tue, Dec 16, 2008 at 05:31:47PM +0100, Alexander Terekhov wrote:
> >> On Tue, Dec 16, 2008 at 2:53 AM, Paul E. McKenney
> >> <paulmck at linux.vnet.ibm.com> wrote:
> >> [...]
> >> >> My impression is that ARM does not respect control dependencies, at
> >> >> least according to the spec.
> >> >
> >> > That is my impression as well.
> >>
> >> Well, see
> >>
> >> http://www.cl.cam.ac.uk/~pes20/weakmemory/draft-ppc-arm.pdf
> >>
> >> "address or data or control dependency load store"
> >
> > Well, perhaps there should be control dependencies in a future C++,
> > then!  ;-)
> >
> > Though I would like to see this in an official ARM manual.  (What, me
> > paranoid?)
> 
> I think it is covered by
> 
> "Accesses can occur in any order, provided that the requirements of
> uniprocessor semantics are met, for example respecting dependencies
> between instructions within a single processor."
> 
> http://www.google.com/search?hl=en&q=ARM+%22respecting+dependencies%22

That is the sort of wording that hardware architects use to say that
a given CPU sees its own accesses in order.  So I don't believe that
it guarantees that -other- CPUs see the given CPU's accesses as
occurring in program order.

							Thanx, Paul



More information about the cpp-threads mailing list