[LLVMdev] qualitative comparison of correctness of llvm and gcc

John Regehr regehr at cs.utah.edu
Mon Jul 21 08:25:48 PDT 2008


Hi Duncan-

> does this also check that writes are atomic: that they are performed in
> one processor operation?

Can you elaborate a bit?  I don't think volatile has any atomicity 
requirements.  Of course I can make a struct, an int128_t, or whatever 
volatile (on AVR even an int16_t is updated non-atomically!).

Lack of atomicity is one of many problems with using volatile as a basis 
for creating correct systems code...

Thanks,

John



More information about the llvm-dev mailing list