2021
DOI: 10.1007/978-3-030-81688-9_35
|View full text |Cite
|
Sign up to set email alerts
|

An SMT Encoding of LLVM’s Memory Model for Bounded Translation Validation

Abstract: Several automatic verification tools have been recently developed to verify subsets of LLVM’s optimizations. However, none of these tools has robust support to verify memory optimizations.In this paper, we present the first SMT encoding of LLVM’s memory model that 1) is sufficiently precise to validate all of LLVM’s intra-procedural memory optimizations, and 2) enables bounded translation validation of programs with up to hundreds of thousands of lines of code. We implemented our new encoding in Alive2, a boun… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1

Citation Types

0
5
0

Year Published

2022
2022
2024
2024

Publication Types

Select...
2
2
1

Relationship

0
5

Authors

Journals

citations
Cited by 5 publications
(5 citation statements)
references
References 45 publications
0
5
0
Order By: Relevance
“…The number of blocks necessary to validate the transformation is determined via static analysis, which is described in [30]. The number is bounded because we do not support loops containing allocating operations.…”
Section: Encoding the Memory Modelmentioning
confidence: 99%
See 4 more Smart Citations
“…The number of blocks necessary to validate the transformation is determined via static analysis, which is described in [30]. The number is bounded because we do not support loops containing allocating operations.…”
Section: Encoding the Memory Modelmentioning
confidence: 99%
“…Local and Non-local Blocks. We adopt the notion of local and non-local blocks from [30]. Local blocks are created by the allocating instructions that belong to the validated function, whereas non-local blocks are not.…”
Section: Encoding the Memory Modelmentioning
confidence: 99%
See 3 more Smart Citations