--
On 7 Nov 2002 at 16:36, Trei, Peter wrote:
> The 'volatile' keyword seems to have poorly defined 
> behaviour.

"Volatile" memory typically both receives input from outside 
the abstract machine, and generates output outside the abstract 
machine.  Indeed the expected reason to write to volatile 
memory is because it generates effects outside the abstract 
machine.

If the optimizer ever optimizes away a write to volatile 
memory, device drivers will fail.  Most device drivers are
written in C.  If anyone ever produces a C compiler in which
"volatile" does not do what we want, not only are they out of
spec, but smoke will start coming out of hardware when the
device drivers are recompiled. 

    --digsig
         James A. Donald
     6YeGpsZR+nOTh/cGwvITnSR3TdzclVpR0+pr3YYQdkG
     kEh2eDIEzpFnafz1M2n+bEgPvpgJoMG5yeNBElma
     4DJ2e1VU89ubCetOzWnz76JuUZBdhHHlg/JLf9Xju

Reply via email to