From: Simon Wright <simon@pogner.demon.co.uk>
Subject: Caching & Annex C.6
Date: 1999/09/03
Date: 1999-09-03T00:00:00+00:00 [thread overview]
Message-ID: <x7vyaenahw3.fsf@pogner.moho> (raw)
In C.6 the AARM says
16 For a volatile object all reads and updates of the object as a
whole are performed directly to memory.
16.a Implementation Note: This precludes any use of register
temporaries, caches, and other similar optimizations for that
object.
We've been having an argument as to precisely what sort of "cache"
we're talking about here. Is it the CPU cache? does this imply that an
implementation must force a cache write-through for volatile objects?
My personal view is that the existence or otherwise of the cache is
transparent and that all that's required is that the write doesn't go
to registers. But then why does the AARM mention cache?
Are there (multi-processor, presumably) systems where you would have
to force a write-through to get the proper effect? Do Ada
implementations on such systems have to do that?
--
Simon Wright Work Email: simon.j.wright@gecm.com
Alenia Marconi Systems Voice: +44(0)1705-701778
Integrated Systems Division FAX: +44(0)1705-701800
next reply other threads:[~1999-09-03 0:00 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
1999-09-03 0:00 Simon Wright [this message]
1999-09-05 0:00 ` Caching & Annex C.6 Robert Dewar
1999-09-05 0:00 ` Simon Wright
1999-09-07 0:00 ` David Kristola
1999-09-08 0:00 ` Robert Dewar
1999-09-08 0:00 ` David Kristola
1999-09-08 0:00 ` Robert Dewar
1999-09-09 0:00 ` Memory mapped registers (was Re: Caching & Annex C.6) David Kristola
1999-09-09 0:00 ` Robert Dewar
1999-09-14 0:00 ` Memory mapped registers (was Re: Cachi David Kristola
1999-09-14 0:00 ` Robert Dewar
1999-09-15 0:00 ` David Kristola
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox