This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Volatiles and speculative memory access reordering...


On modern CPU's such as Intel's Pentium 4 and Itanium 2, the CPU may reorder 
accesses to volatiles across sequence points if a serializing insn is not 
inserted at the sequence point.  What should be done about this?  On the 
i386 with SSE2, we can use the "mfence" insn to serialize memory accesses.  
But, how would we represent this in RTL?  What should we do on platforms 
that do not have dedicated serializing insns?

Lucas


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]