4 ms·
Is there anything like Loom or Shuttle for C/C++? Or are these only implemented in rust and they'd still work with C/C++?
by wyldfire 6y ago
Is there anything like Loom or Shuttle for C/C++?
Or are these only implemented in rust and they'd still work with C/C++?
- kibwen 6y agoI vaguely recall that Loom is an implementation of a research paper that purported to implement this for C/C++, but I don't know if that implementation is available/production-ready. In the worst case it should be relatively straightforward to back-port Loom to C++, since Rust also uses the C memory model.
- SloopJon 6y agoThe paper is here (referenced in the Loom docs.): http://demsky.eecs.uci.edu/publications/c11modelcheck.pdf http://demsky.eecs.uci.edu/publications/c11modelcheck.pdf This page describes how to get the code (linked from the paper): http://plrg.ics.uci.edu/software_page/42-2/ http://plrg.ics.uci.edu/software_page/42-2/ I found some data races in an ODBC driver using TSan. Running it through CDSChecker is one of my round tuit projects.