Relaxing safely: verified on-the-fly garbage collection for x86-TSO

Peter Gammie, Antony L. Hosking, Kai Engelhardt
2015 Proceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation - PLDI 2015  
We report on a machine-checked verification of safety for a stateof-the-art, on-the-fly, concurrent, mark-sweep garbage collector that is designed for multi-core architectures with weak memory consistency. The proof explicitly incorporates the relaxed memory semantics of x86 multiprocessors. To our knowledge, this is the first fully machine-checked proof of safety for such a garbage collector. We couch the proof in a framework that system implementers will find appealing, with the fundamental
more » ... mponents of the system specified in a simple and intuitive programming language. The abstract model is detailed enough for its correspondence with an assembly language implementation to be straightforward.
doi:10.1145/2737924.2738006 dblp:conf/pldi/GammieHE15 fatcat:q2z6nochuvg2te6wgauo2zkoge