Verifying x86-TSO Fence Elimination Optimisations

This talk will introduce CompCertTSO, a fully-fledged certified compilerfrom a concurrent extension of a C-like language to x86 assembler thathas been programmed and proved correct in Coq, and will describe somesimple compiler optimisations for removing redundant memory fences in programs running on top of the x86-TSO relaxed memory model. While theoptimisations will be performed using standard thread-local control flowanalyses, their correctness is subtle and relies on a non-standard globalsimulation argument.