PLDI '92 Proceedings of the ACM SIGPLAN 1992 conference on Programming language design and implementation
ACM Transactions on Programming Languages and Systems (TOPLAS)
Translation validation for an optimizing compiler
PLDI '00 Proceedings of the ACM SIGPLAN 2000 conference on Programming language design and implementation
Optimal spilling for CISC machines with few registers
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
Validating software pipelining optimizations
CASES '02 Proceedings of the 2002 international conference on Compilers, architecture, and synthesis for embedded systems
TACAS '98 Proceedings of the 4th International Conference on Tools and Algorithms for Construction and Analysis of Systems
Automatically proving the correctness of translations involving optimized code.
Automatically proving the correctness of translations involving optimized code.
Symbolic transfer function-based approaches to certified compilation
Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Interactive Theorem Proving and Program Development
Interactive Theorem Proving and Program Development
Formal verification of translation validators: a case study on instruction scheduling optimizations
Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Formal verification of a realistic compiler
Communications of the ACM - Barbara Liskov: ACM's A.M. Turing Award Winner
Verified validation of lazy code motion
Proceedings of the 2009 ACM SIGPLAN conference on Programming language design and implementation
Proving optimizations correct using parameterized program equivalence
Proceedings of the 2009 ACM SIGPLAN conference on Programming language design and implementation
A Formally Verified Compiler Back-end
Journal of Automated Reasoning
A simple, verified validator for software pipelining
Proceedings of the 37th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Catching and identifying bugs in register allocation
SAS'06 Proceedings of the 13th international conference on Static Analysis
TVOC: a translation validator for optimizing compilers
CAV'05 Proceedings of the 17th international conference on Computer Aided Verification
Formal verification of coalescing graph-coloring register allocation
ESOP'10 Proceedings of the 19th European conference on Programming Languages and Systems
An executable semantics for compcert c
CPP'12 Proceedings of the Second international conference on Certified Programs and Proofs
Code optimizations using formally verified properties
Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications
Hi-index | 0.00 |
Following the translation validation approach to high-assurance compilation, we describe a new algorithm for validating a posteriori the results of a run of register allocation. The algorithm is based on backward dataflow inference of equations between variables, registers and stack locations, and can cope with sophisticated forms of spilling and live range splitting, as well as many architectural irregularities such as overlapping registers. The soundness of the algorithm was mechanically proved using the Coq proof assistant.