First Steps towards Deductive Verification of LLVM IR. van Oorschot , D., Huisman, M., & Şakar, Ö. In Beyer, D. & Cavalcanti, A., editors, Fundamental Approaches to Software Engineering, of Lecture Notes in Computer Science, pages 290–303, April, 2024. 27th International Conference on Fundamental Approaches to Software Engineering, FASE 2024, FASE ; Conference date: 06-04-2024 Through 11-04-2024
doi  abstract   bibtex   
Over the last years, deductive program verifiers have substantially improved, and their applicability on non-trivial applications has been demonstrated. However, a major bottleneck is that for every new programming language, a new deductive verifier has to be built.This paper describes the first steps in a project that aims to address this problem, by language-agnostic support for deductive verification: Rather than building a deductive program verifier for every programming language, we develop deductive program verification technology for a widely-used intermediate representation language (LLVM IR), such that we eventually get verification support for any language that can be compiled into the LLVM IR format.Concretely, this paper describes the design of VCLLVM, a prototype tool that adds LLVM IR as a supported language to the VerCors verifier. We discuss the challenges that have to be addressed to develop verification support for such a low-level language. Moreover, we also sketch how we envisage to build verification support for any specified source program that can be compiled into LLVM IR on top of VCLLVM.
@inproceedings{Oorschot24,
title = "First Steps towards Deductive Verification of LLVM IR",
abstract = "Over the last years, deductive program verifiers have substantially improved, and their applicability on non-trivial applications has been demonstrated. However, a major bottleneck is that for every new programming language, a new deductive verifier has to be built.This paper describes the first steps in a project that aims to address this problem, by language-agnostic support for deductive verification: Rather than building a deductive program verifier for every programming language, we develop deductive program verification technology for a widely-used intermediate representation language (LLVM IR), such that we eventually get verification support for any language that can be compiled into the LLVM IR format.Concretely, this paper describes the design of VCLLVM, a prototype tool that adds LLVM IR as a supported language to the VerCors verifier. We discuss the challenges that have to be addressed to develop verification support for such a low-level language. Moreover, we also sketch how we envisage to build verification support for any specified source program that can be compiled into LLVM IR on top of VCLLVM.",
keywords = "2024 OA procedure",
author = "{van Oorschot}, Dr{\'e} and Huisman, Marieke and {\c{S}}akar, {\"O}mer",
year = "2024",
month = apr,
day = "6",
doi = "10.1007/978-3-031-57259-3_15",
language = "English",
isbn = "978-3-031-57258-6",
series = "Lecture Notes in Computer Science",
pages = "290--303",
editor = "Dirk Beyer and Ana Cavalcanti",
booktitle = "Fundamental Approaches to Software Engineering",
note = "27th International Conference on Fundamental Approaches to Software Engineering, FASE 2024, FASE ; Conference date: 06-04-2024 Through 11-04-2024",

}

Downloads: 0