>       register int a;
>       extern volatile int b;
> 
>       a = b;
>       a |= 0x54;
>       b = a;
> 
> The ISO spec seems to allow gcc to perform those operations in a
> single physical insn, as long as the operations on 'b' are all
> performed, and in the correct sequence.

And I believe it's also consistent with the "traditional" view
of volatile if that were done with a single read-modify-write insn.

Reply via email to