arXiv · 1703.05341
DiVM: Model Checking with LLVM and Graph Memory
Abstract
In this paper, we introduce the concept of a virtual machine with graph-organised memory as a versatile backend for both explicit-state and abstraction-driven verification of software. Our virtual machine uses the LLVM IR as its instruction set, enriched with a small set of hypercalls. We show that the provided hypercalls are sufficient to implement a small operating system, which can then be linked with applications to provide a POSIX-compatible verification environment. Finally, we demonstrate the viability of the approach through a comparison with a more traditionally-designed LLVM model checker.
Explore related subjects
Keep this discovery
Petr Ročkai, Vladimír Štill, Ivana černá, Jiří Barnat. 2017-03-15. DiVM: Model Checking with LLVM and Graph Memory. https://doi.org/10.1016/j.jss.2018.04.026
Cite the original work for its findings. Save a collection to share your selection of sources.