2011
DOI: 10.1007/978-3-642-22110-1_59
|View full text |Cite
|
Sign up to set email alerts
|

Equality-Based Translation Validator for LLVM

Abstract: We updated our Peggy tool, previously presented in [7], to perform translation validation for the LLVM compiler using a technique called Equality Saturation. We present the tool, and illustrate its effectiveness at doing translation validation on SPEC 2006 benchmarks.

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

1
55
0

Year Published

2012
2012
2023
2023

Publication Types

Select...
7
2

Relationship

0
9

Authors

Journals

citations
Cited by 48 publications
(56 citation statements)
references
References 8 publications
1
55
0
Order By: Relevance
“…Proving the equivalence of programs has several important applications, including, but not limited to, algorithm recognition [2], regression checking [11,13,25], compiler optimization verification [18,24] and validation [31,33,41,44,47,48], and information flow proofs [5,43].…”
Section: Introductionmentioning
confidence: 99%
“…Proving the equivalence of programs has several important applications, including, but not limited to, algorithm recognition [2], regression checking [11,13,25], compiler optimization verification [18,24] and validation [31,33,41,44,47,48], and information flow proofs [5,43].…”
Section: Introductionmentioning
confidence: 99%
“…Eventually, it should be possible to shift all CompCert optimisations into the SSA middle-end. In the longer term, it would be appealing to apply our methods to LLVM, building on [23,21,26].…”
Section: Discussionmentioning
confidence: 99%
“…But they do not prove the semantics preservation of the optimizations. Stepp et al [21] report on a translation validator for LLVM. Their validator uses Equality Saturation [22], which views optimizations as equality analyses.…”
Section: Related Workmentioning
confidence: 99%
“…Translation validation (e.g., [32,35,41,42]) is a set of techniques that attempt to prove that compiler optimizations did not change the semantics of the program given as input (after the optimizer run). Our work is similar in spirit to translation validation since we use an off-the-shelf, untrusted compiler and validate whether the code it produced satisfies the security properties we are interested in.…”
Section: Related Workmentioning
confidence: 99%