pith. sign in

arxiv: 1703.05341 · v3 · pith:66C3CF7Dnew · submitted 2017-03-15 · 💻 cs.SE

DiVM: Model Checking with LLVM and Graph Memory

classification 💻 cs.SE
keywords llvmhypercallsmachinememorymodelsmallverificationvirtual
0
0 comments X
read the original 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.

This paper has not been read by Pith yet.

discussion (0)

Sign in with ORCID, Apple, or X to comment. Anyone can read and Pith papers without signing in.

Forward citations

Cited by 1 Pith paper

Reviewed papers in the Pith corpus that reference this work. Sorted by Pith novelty score.

  1. Model Checking a C++ Software Framework, a Case Study

    cs.SE 2019-06 unverdicted novelty 3.0

    Case study shows that SPIN and DIVINE model checkers can uncover design flaws and code defects in a C++ framework missed by hundreds of hours of testing and can be integrated into the development workflow.