Statistical Model Checking of LLVM Code - Archive ouverte HAL Access content directly
Preprints, Working Papers, ... Year : 2017

Statistical Model Checking of LLVM Code


We present our work in providing Statistical Model Checking for programs in LLVM bitcode. As part of this work we develop a semantics for programs that separates the program itself from its environment. The program interact with the environment through function calls. The environment is furthermore allowed to perform actions that alter the state of the C-program-useful for mimicking an interrupt system. On top of this semantics we build a probabilistic semantics and present an algorithm for simulating traces under that semantics.. This paper also includes the development of the new tool component Lodin that provides a statistical model checking infrastructure for LLVM programs. The tool currently implement standard Monte Carlo algorithms and a simulator component to manually inspect the behaviour of programs. The simulator also proves useful in one of our other main contributions; namely producing the first tool capable of doing importance splitting on LLVM code. Importance splitting is implemented by integrating Lodin with the existing statistical model checking tool Plasma-Lab.
Fichier principal
Vignette du fichier
TACAS_2018_paper_80.pdf (828.08 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-01640097 , version 1 (20-11-2017)


  • HAL Id : hal-01640097 , version 1


Louis-Marie Traonouez, Axel Legay, Dirk Nowotka, Danny Bøgsted Poulsen. Statistical Model Checking of LLVM Code. 2017. ⟨hal-01640097⟩
912 View
325 Download


Gmail Facebook X LinkedIn More