[dmd-internals] Regarding deprecation of volatile statements

Alex Rønne Petersen xtzgzorex at gmail.com
Tue Jul 31 09:46:26 PDT 2012


On Thu, Jul 26, 2012 at 6:37 AM, Martin Nowak <dawg at dawgfoto.de> wrote:
>> Right, that's why it is incorrect to refer to it as "standard" behavior.
>> Behaviors I've seen include various combinations of:
>>
>> 1. disallowing enregistering
>> 2. preventing folding multiple loads/stores together
>> 3. preventing reordering across expressions with volatiles
>> 4. inserting memory load/store fences
>>
> 1 && 2 for memory-mapped IO and 3 && 4 for concurrent access to shared
> memory.
>
>
>>
>> D volatile isn't implemented, either.
>>
> At least for dmd it disables instruction rescheduling.

But it's still deprecated, so I can't write new code that relies on
point 1 and 2. :(

Regards,
Alex


More information about the dmd-internals mailing list