Compilers are not always correct due to the complexity of language semantics and transformation algorithms, the trade-offs between compilation speed and verifiability,etc.The bugs of compilers can undermine the source-level verification efforts (such as type systems, static analysis, and formal proofs) and produce target programs with different meaning from source programs. Researchers have used mechanized proof tools to implement verified compilers that are guaranteed to preserve program semantics and proved to be more robust than ad-hoc non-verified compilers. The goal of the dissertation is to make a step towards verifying an industrial strength modern compiler--LLVM, which has a typed, SSA-based, and general-purpose intermediate represe...
As any piece of software, compilers, and especially optimizing compilers, can be faulty. It is there...
International audienceThis paper reports on the development and formal certification (proof of seman...
Most software systems are described in high-level model or programming languages. Their runtime beha...
Compilers are not always correct due to the complexity of language semantics and transformation algo...
Compilers are not always correct due to the complexity of language semantics and transformation algo...
This paper presents Vellvm (verified LLVM), a framework for reasoning about programs expressed in LL...
AbstractWe study issues in verifying compilers for modern imperative and object-oriented languages. ...
Thesis (Ph.D.)--University of Washington, 2018Modern computer systems rely on the correctness of at ...
CompCert is a formally verified compiler that generates compact and efficient PowerPC, ARM and x86 c...
International audienceThis article describes the development and formal verification (proof of seman...
Modern optimizing compilers such as LLVM and GCC are huge and complex, and mature releases routinely...
Though there has been remarkable progress on formally verified compilers in recent years, most of th...
International audienceGiven the complexity and sophistication of code generation and optimization al...
International audienceFormal verification of software or hardware systems — be it by model checking,...
This paper presents an approach to compiler correctness in which the compiler generates a proof that...
As any piece of software, compilers, and especially optimizing compilers, can be faulty. It is there...
International audienceThis paper reports on the development and formal certification (proof of seman...
Most software systems are described in high-level model or programming languages. Their runtime beha...
Compilers are not always correct due to the complexity of language semantics and transformation algo...
Compilers are not always correct due to the complexity of language semantics and transformation algo...
This paper presents Vellvm (verified LLVM), a framework for reasoning about programs expressed in LL...
AbstractWe study issues in verifying compilers for modern imperative and object-oriented languages. ...
Thesis (Ph.D.)--University of Washington, 2018Modern computer systems rely on the correctness of at ...
CompCert is a formally verified compiler that generates compact and efficient PowerPC, ARM and x86 c...
International audienceThis article describes the development and formal verification (proof of seman...
Modern optimizing compilers such as LLVM and GCC are huge and complex, and mature releases routinely...
Though there has been remarkable progress on formally verified compilers in recent years, most of th...
International audienceGiven the complexity and sophistication of code generation and optimization al...
International audienceFormal verification of software or hardware systems — be it by model checking,...
This paper presents an approach to compiler correctness in which the compiler generates a proof that...
As any piece of software, compilers, and especially optimizing compilers, can be faulty. It is there...
International audienceThis paper reports on the development and formal certification (proof of seman...
Most software systems are described in high-level model or programming languages. Their runtime beha...