A. W. Appel, Modern Compiler Implementation in ML, 1998.
DOI : 10.1017/CBO9780511811449

Y. Bertot and P. Castéran, Interactive Theorem Proving and Program Development ? Coq'Art: The Calculus of Inductive Constructions, EATCS Texts in Theoretical Computer Science, 2004.
URL : https://hal.archives-ouvertes.fr/hal-00344237

C. W. Barrett, Y. Fang, B. Goldberg, Y. Hu, A. Pnueli et al., TVOC: A Translation Validator for Optimizing Compilers, Computer Aided Verification, 17th Int. Conf., CAV 2005, pp.291-295, 2005.
DOI : 10.1007/11513988_29

G. Barthe, J. Forest, D. Pichardie, and V. Rusu, Defining and Reasoning About Recursive Functions: A Practical Tool for the Coq Proof Assistant, Functional and Logic Programming, 8th Int. Symp., FLOPS 2006, pp.114-129, 2006.
DOI : 10.1007/11737414_9

URL : https://hal.archives-ouvertes.fr/inria-00564237

[. Bodík, R. Gupta, and M. L. Soffa, Complete removal of redundant expressions, PLDI '98: Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation, pp.1-14, 1998.

B. Chen, D. Yee, S. Sehr, R. Okasaka, G. Muth et al., Nicholas Fullagar, Neha Narula, and Tavis Ormandy. Native client: A sandbox for portable, untrusted x86 native code, IEEE Symposium on Security and Privacy, 2009.

A. Maulik and . Dave, Compiler verification: a bibliography, SIGSOFT Softw. Eng. Notes, vol.28, issue.6, pp.2-2, 2003.

]. L. Deu73 and . Peter-deutsch, An interactive program verifier, 1973.

. Xfi, Software guards for system address spaces, USENIX Symposium on Operating Systems Design and Implementation. USENIX Association, 2006.

J. R. Ellis, Bulldog: a compiler for VLSI architectures ACM Doctoral Dissertation Awards, 1986.

B. Goldberg, E. Chapman, C. Huneycutt, and K. Palem, Software bubbles: using predication to compensate for aliasing in software pipelines, Proceedings.International Conference on Parallel Architectures and Compilation Techniques, p.211, 2002.
DOI : 10.1109/PACT.2002.1106019

H. Geuvers, Proof assistants: History, ideas and future, Sadhana, vol.121, issue.1, pp.3-25, 2009.
DOI : 10.1007/s12046-009-0001-5

[. Gulwani and G. C. Necula, A Polynomial-Time Algorithm for Global Value Numbering, Static Analysis, 11th Int. Symp., SAS 2004, pp.212-227, 2004.
DOI : 10.1007/978-3-540-27864-1_17

G. Gonthier, Formal proof ? the four-color theorem. Notices of the, pp.1382-1393, 2008.

S. Gulwani, Program analysis using random interpretation, Ph.D. Dissertation, 2005.

B. Goldberg, L. Zuck, and C. Barrett, Into the Loops: Practical Issues in Translation Validation for Optimizing Compilers, Proc. Workshop Compiler Optimization Meets Compiler Verification, pp.53-71, 2004.
DOI : 10.1016/j.entcs.2005.01.030

C. Thomas and . Hales, Formal proof. Notices of the, pp.1370-1380, 2008.

J. Harrison, Formal proof ? theory and practice. Notices of the, pp.1395-1406, 2008.

Y. Huang, B. R. Childers, and M. L. Soffa, Catching and Identifying Bugs in Register Allocation, Static Analysis, 13th Int. Symp., SAS 2006, pp.281-300, 2006.
DOI : 10.1007/11823230_19

A. Richard and . Huff, Lifetime-sensitive modulo scheduling, Proc. of the ACM SIG- PLAN '93 Conf. on Programming Language Design and Implementation, pp.258-267, 1993.

D. Jackson, A direct path to dependable software, Communications of the ACM, vol.52, issue.4, pp.78-88, 2009.
DOI : 10.1145/1498765.1498787

J. C. King, A program verifier, 1969.

G. Klein and T. Nipkow, Verified bytecode verifiers, Theoretical Computer Science, vol.298, issue.3, pp.583-626, 2003.
DOI : 10.1016/S0304-3975(02)00869-1

G. Klein and T. Nipkow, A machine-checked model for a Java-like language, virtual machine, and compiler, ACM Transactions on Programming Languages and Systems, vol.28, issue.4, pp.619-695, 2006.
DOI : 10.1145/1146809.1146811

J. Knoop, O. Rüthing, and B. Steffen, Lazy code motion, Programming Languages Design and Implementation 1992, pp.224-234, 1992.

J. Knoop, O. Rüthing, and B. Steffen, Optimal code motion: theory and practice, ACM Transactions on Programming Languages and Systems, vol.16, issue.4, pp.1117-1155, 1994.
DOI : 10.1145/183432.183443

A. Kanade, A. Sanyal, and U. Khedker, A PVS Based Framework for Validating Compiler Optimizations, Fourth IEEE International Conference on Software Engineering and Formal Methods (SEFM'06), pp.108-117, 2006.
DOI : 10.1109/SEFM.2006.4

S. Kundu, Z. Tatlock, and S. Lerner, Proving optimizations correct using parameterized program equivalence, Proceedings of the 2009 Conference on Programming Language Design and Implementation, 2009.

X. Leroy, The CompCert verified compiler, 2003.
URL : https://hal.archives-ouvertes.fr/hal-01399482

M. Lam, Software pipelining, Proc. of the ACM SIGPLAN '88 Conf. on Programming Language Design and Implementation, pp.318-328, 1988.
DOI : 10.1145/989393.989420

X. Leroy and S. Blazy, Formal Verification of a C-like Memory Model and Its Uses for Verifying Program Transformations, Journal of Automated Reasoning, vol.17, issue.5???6, pp.1-31, 2008.
DOI : 10.1007/s10817-008-9099-0

URL : https://hal.archives-ouvertes.fr/inria-00289542

X. Leroy, Formal certification of a compiler back-end, or: programming a compiler with a proof assistant, 33rd symposium Principles of Programming Languages, pp.42-54, 2006.
URL : https://hal.archives-ouvertes.fr/inria-00000963

X. Leroy, A Formally Verified Compiler Back-end, Journal of Automated Reasoning, vol.27, issue.1, 2008.
DOI : 10.1007/s10817-009-9155-4

URL : https://hal.archives-ouvertes.fr/inria-00360768

J. Llosa, A. González, E. Ayguadé, and M. Valero, Swing modulo scheduling: A lifetime-sensitive approach, IFIP WG10.3 Working Conference on Parallel Architectures and Compilation Techniques, pp.80-86, 1996.

[. Leviathan and A. Pnueli, Validating software pipelining optimizations, Proceedings of the international conference on Compilers, architecture, and synthesis for embedded systems , CASES '02
DOI : 10.1145/581630.581676

I. Int and . Conf, On Compilers, Architecture, And Synthesis For Embedded Systems, pp.280-287, 2002.

D. Leinenbach, W. Paul, and E. Petrova, Towards the formal verification of a C0 compiler: code generation and implementation correctness, Third IEEE International Conference on Software Engineering and Formal Methods (SEFM'05), pp.2-11, 2005.
DOI : 10.1109/SEFM.2005.51

J. Mccarthy, Towards a mathematical theory of computation, Proceedings of the International Congress on Information Processing, pp.21-28, 1963.

M. Josep, J. Codina, A. Llosa, and . González, A comparative study of modulo scheduling techniques, Proc. of the 16th international conference on Supercomputing, pp.97-106, 2002.

S. Moore, A mechanically verified language implementation, Journal of Automated Reasoning, vol.5, issue.4, pp.461-492, 1989.
DOI : 10.1007/BF00243133

J. Mccarthy and J. Painter, Correctness of a compiler for arithmetic expressions, Mathematical Aspects of Computer Science, vol.1, issue.19, 1967.
DOI : 10.1090/psapm/019/0242403

E. Morel and C. Renvoise, Global optimization by suppression of partial redundancies, Communications of the ACM, vol.22, issue.2, pp.96-103, 1979.
DOI : 10.1145/359060.359069

S. Steven and . Muchnick, Advanced compiler design and implementation, 1997.

R. Milner and R. Weyhrauch, Proving compiler correctness in a mechanized logic, Proceedings of the 7th Annual Machine Intelligence Workshop, pp.51-72

C. George and . Necula, Proof-carrying code, 24th symposium Principles of Programming Languages, pp.106-119, 1997.

C. George and . Necula, Translation validation for an optimizing compiler, Programming Language Design and Implementation, pp.83-95, 2000.

A. Pnueli, O. Shtrichman, and M. Siegel, The Code Validation Tool (CVT), International Journal on Software Tools for Technology Transfer (STTT), vol.2, issue.2, pp.192-201, 1998.
DOI : 10.1007/s100090050027

A. Pnueli, M. Siegel, and E. Singerman, Translation validation, TACAS '98, pp.151-166, 1998.
DOI : 10.1007/BFb0054170

A. Pnueli and A. Zaks, Validation of interprocedural optimization, Proc. Workshop Compiler Optimization Meets Compiler Verification Electronic Notes in Theoretical Computer Science, 2008.

B. and R. Rau, Iterative modulo scheduling, The International Journal of Parallel Processing, vol.24, issue.1, pp.1-102, 1996.

M. Rinard and D. Marinov, Credible compilation with pointers, Workshop on Run-Time Result Verification, 1999.

[. Rau, M. S. Schlansker, and P. P. Timmalai, Code generation schema for modulo scheduled loops, Proceedings of the 25th Annual International Symposium on Microarchitecture, pp.158-169, 1992.

H. Samet, Automatically Proving the Correctness of Translations Involving Optimized Code, 1975.

. Sb99-]-emin-gun, B. N. Sirer, and . Bershad, Testing Java virtual machines, Proc. Int

B. Steffen, Property-oriented expansion, Static Analysis, Third International Symposium, SAS'96, pp.22-41, 1996.
DOI : 10.1007/3-540-61739-6_31

M. Strecker, Compiler verification for C0, 2005.

J. Tristan and X. Leroy, Formal verification of translation validators: A case study on instruction scheduling optimizations, 35th symposium Principles of Programming Languages, pp.17-27, 2008.
URL : https://hal.archives-ouvertes.fr/inria-00289540

J. Tristan and X. Leroy, Verified validation of lazy code motion, ACM SIGPLAN 2009 Conference on Programming Language Design and Implementation, pp.316-326, 2009.
URL : https://hal.archives-ouvertes.fr/inria-00415865

J. Tristan and X. Leroy, A simple, verified validator for software pipelining, 37th symposium Principles of Programming Languages, 2010.
URL : https://hal.archives-ouvertes.fr/inria-00529836

F. Wiedijk, Formal proof ? getting started. Notices of the, pp.1408-1414, 2008.

A. Zaks and A. Pnueli, CoVaC: Compiler Validation by Program Analysis of the Cross-Product, FM 2008: Formal Methods, 15th International Symposium on Formal Methods, pp.35-51
DOI : 10.1007/978-3-540-68237-0_5

L. Zuck, A. Pnueli, Y. Fang, and B. Goldberg, VOC, Electronic Notes in Theoretical Computer Science, vol.65, issue.2, pp.223-247, 2003.
DOI : 10.1016/S1571-0661(04)80393-1

L. Zuck, A. Pnueli, R. Leviathan, and .. , Validation of optimizing compilers Weizmann institute of Science List of Figures 2.1 Architecture of the Compcert compiler. The thick arrows correspond to the compilation passes presented in this dissertation, p.26, 2001.