[dmd-internals] Regarding deprecation of volatile statements
Martin Nowak
dawg at dawgfoto.de
Wed Jul 25 21:37:38 PDT 2012
> 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.
More information about the dmd-internals
mailing list