comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Forcing GNAT to use 32-bit load/store instructions on ARM?
Date: Tue, 1 Jul 2014 21:36:41 +0200
Date: 2014-07-01T21:36:41+02:00	[thread overview]
Message-ID: <nboccqyjxkzx$.10p3g2l6gzzdd.dlg@40tude.net> (raw)
In-Reply-To: loupft$48j$1@dont-email.me

On Tue, 1 Jul 2014 17:00:45 +0000 (UTC), Simon Clubley wrote:

> On 2014-07-01, Dmitry A. Kazakov <mailbox@dmitry-kazakov.de> wrote:
>> On Tue, 1 Jul 2014 12:09:36 +0000 (UTC), Simon Clubley wrote:
>>
>>> On 2014-07-01, Dmitry A. Kazakov <mailbox@dmitry-kazakov.de> wrote:
>>>> On Mon, 30 Jun 2014 15:11:31 -0700 (PDT), daniel.dmk@googlemail.com wrote:
>>>>> Things I have tried:
>>>>> 1) Using the Atomic aspect on the record type and CR object had no effect
>>>>> on the code generated.
>>>>
>>>> Yes, I hope they will fix this for this and other platforms, e.g. 64-bit
>>>> atomic load/store for i686.
>>> 
>>> Are you saying Pragma Atomic is known to be broken in GNAT ?
>>
>> It is not broken. The problem I know is that it is rejected on machines
>> that do support atomic load and store.
>>
> 
> That's not great, but at least you know there's a problem at compile
> time.
> 
> In the OP's case (according to the problem description), pragma Atomic
> was been accepted, but the generated code was not using a 32-bit store
> and was using an 8-bit store into a 32-bit field instead.

Yes, my case was different. The pragma was rejected.

> If for some reason the compiler could not generate a 32-bit str opcode
> instead of an 8-bit strb opcode, the pragma Atomic should have caused
> an error during compilation.

Well, pragmas are permitted to be ignored. Atomic should never be a pragma.

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de


  reply	other threads:[~2014-07-01 19:36 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-06-30 22:11 Forcing GNAT to use 32-bit load/store instructions on ARM? daniel.dmk
2014-06-30 23:41 ` Jeffrey Carter
2014-07-01 12:06   ` Simon Clubley
2014-07-01 15:44     ` Niklas Holsti
2014-07-01 17:26       ` Simon Clubley
2014-07-01 17:18     ` Simon Wright
2014-07-01 19:43       ` Simon Wright
2014-07-01 17:28     ` Jeffrey Carter
2014-07-01  0:55 ` anon
2014-07-01  4:30 ` Niklas Holsti
2014-07-01  8:11 ` Dmitry A. Kazakov
2014-07-01 12:09   ` Simon Clubley
2014-07-01 12:20     ` Dmitry A. Kazakov
2014-07-01 17:00       ` Simon Clubley
2014-07-01 19:36         ` Dmitry A. Kazakov [this message]
2014-07-01 20:08           ` Simon Clubley
2014-07-02 22:24             ` Randy Brukardt
2014-07-06 20:40               ` MatthiasR
2014-07-07  0:25                 ` Simon Clubley
2014-07-07 22:38                 ` Randy Brukardt
2014-07-08  6:51                   ` Simon Wright
2014-07-10 11:47                     ` Simon Wright
2014-07-10 13:06                       ` Simon Clubley
2014-07-11 18:05                         ` Simon Wright
2014-07-11 20:22                           ` Simon Clubley
2014-07-08  8:50                   ` Brian Drummond
2014-07-08 12:12                   ` Simon Clubley
2014-07-08 13:26                     ` G.B.
2014-07-08 17:13                       ` Simon Clubley
2014-07-08 15:36                     ` Adam Beneschan
2014-07-08 15:40                       ` Adam Beneschan
2014-07-08 20:34                     ` Randy Brukardt
2014-07-09  7:31                       ` Dmitry A. Kazakov
2014-07-10  0:11                         ` Simon Clubley
2014-07-20 11:35                   ` MatthiasR
2014-07-20 15:49                     ` Simon Clubley
2014-07-26 11:05                       ` MatthiasR
2014-08-10 11:20                         ` MatthiasR
2014-07-01 12:03 ` Simon Clubley
2014-07-01 19:52   ` daniel.dmk
2014-07-01 20:40     ` Simon Clubley
2014-07-01 20:55       ` Simon Clubley
2014-07-01 21:01       ` Niklas Holsti
2014-07-01 21:20         ` Simon Clubley
2014-07-01 22:38           ` Niklas Holsti
2014-07-02 16:49             ` Simon Clubley
2014-07-01 21:55         ` daniel.dmk
2014-07-02  7:30     ` Simon Wright
2014-07-02 18:52       ` daniel.dmk
2014-07-04 23:51       ` Niklas Holsti
2014-07-05  0:18         ` Niklas Holsti
replies disabled

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