comp.lang.ada
 help / color / mirror / Atom feed
From: "DuckE" <nospam_steved94@home.com>
Subject: Re: gnat/ppc and a32 blt transfers
Date: Thu, 02 Nov 2000 04:55:36 GMT
Date: 2000-11-02T04:55:36+00:00	[thread overview]
Message-ID: <ct6M5.42679$E85.1088500@news1.sttls1.wa.home.com> (raw)
In-Reply-To: 8tpvpl$ige$1@nnrp1.deja.com

Should't

 pragma Atomic( variable );

cause accesses to a variable to be performed as a single operation?

While I would not expect this to work for the component of a packed boolean
array, since  element is not individually addessable (on most
architectures), I would expect this functionality using types that are
individually addressable.

For example, on an architecture where integers are 32 bit values I would
expect the following declarations:

  memValue : Integer;
  FOR memValue'ADDRESS USE
System.Storage_Elements.To_Address( 16#FFFE0000# );
  PRAGMA Atomic( memValue );

To generate code that uses 32 bit accesses to memValue.

Since GNAT supports Annex C, and this behaviour is described in C.6.15, I
would expect this behavior.

Am I missing something?

SteveD






  reply	other threads:[~2000-11-02  4:55 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-11-01 19:47 gnat/ppc and a32 blt transfers Al Johnston
2000-11-01 20:52 ` Robert Dewar
2000-11-02  4:55   ` DuckE [this message]
2000-11-02 14:26     ` Robert A Duff
2000-11-02 19:58 ` Al Johnston
2000-11-04  5:02   ` Robert Dewar
2000-11-04  0:00     ` David Starner
2000-11-06  0:00       ` Robert Dewar
2000-11-11  6:38         ` David Thompson
2000-11-06  7:39       ` tmoran
2000-11-04  0:00     ` Al Johnston
2000-11-05  0:00       ` Florian Weimer
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox