Just-in-Time compilation is a technique to execute programs, where execution is interleaved with optimizations. Just-in-Time compilers often produce fast executions, but are particularly complex. For instance, they reuse various existing techniques: some contain both interpreters to execute programs and traditional compilers to generate optimized machine code. They also use ad hoc techniques like speculation, which consists in predicting the future behavior of the program to generate specialized code that executes particularly fast if the prediction holds. This great complexity can lead to bugs. This thesis tackles their formal verification, to develop Just-in-Time compilers in such a way that one can formally prove that they behave as pres...
International audienceHigh-performance dynamic language implementations make heavy use of speculativ...
Compilation is a constantly evolving field, the participants of which are trying to take into accoun...
Some environments require several compilers, for instance one for the operating system, supporting t...
Les compilateurs modernes consacrent beaucoup d efforts pour générer un code à la fois correct et ef...
Our society is increasingly dependent on computer systems. Ensuring their security is essential to a...
International audienceModern Just-in-Time compilers (or JITs) typically interleave several mechanism...
As any piece of software, compilers, and especially optimizing compilers, can be faulty. It is there...
International audienceJust-in-time compilers for dynamic languages routinely generate code under ass...
Software programs are used for many critical roles. A bug in those can have a devastatingcost, possi...
Abstract. In this article, we describe a framework for formally verify-ing the correctness of compil...
AbstractA compiler optimization is sound if the optimized program that it produces is semantically e...
Runtime compilation, due to its online nature, presents unique challenges and opportunities to compi...
As part of formal verification of critical software, preserving properties established on the source...
Synchronous languages first appeared during the 80’s, in order to provide a mathematical model for s...
144 pages Defended and granted with Highest Honors in October 2000.This work falls within the scope ...
International audienceHigh-performance dynamic language implementations make heavy use of speculativ...
Compilation is a constantly evolving field, the participants of which are trying to take into accoun...
Some environments require several compilers, for instance one for the operating system, supporting t...
Les compilateurs modernes consacrent beaucoup d efforts pour générer un code à la fois correct et ef...
Our society is increasingly dependent on computer systems. Ensuring their security is essential to a...
International audienceModern Just-in-Time compilers (or JITs) typically interleave several mechanism...
As any piece of software, compilers, and especially optimizing compilers, can be faulty. It is there...
International audienceJust-in-time compilers for dynamic languages routinely generate code under ass...
Software programs are used for many critical roles. A bug in those can have a devastatingcost, possi...
Abstract. In this article, we describe a framework for formally verify-ing the correctness of compil...
AbstractA compiler optimization is sound if the optimized program that it produces is semantically e...
Runtime compilation, due to its online nature, presents unique challenges and opportunities to compi...
As part of formal verification of critical software, preserving properties established on the source...
Synchronous languages first appeared during the 80’s, in order to provide a mathematical model for s...
144 pages Defended and granted with Highest Honors in October 2000.This work falls within the scope ...
International audienceHigh-performance dynamic language implementations make heavy use of speculativ...
Compilation is a constantly evolving field, the participants of which are trying to take into accoun...
Some environments require several compilers, for instance one for the operating system, supporting t...