1
Formal C semantics: CompCert and the C standard
Robbert Krebbers1 Xavier Leroy2 Freek Wiedijk1
1ICIS, Radboud University Nijmegen, The Netherlands 2Inria Paris-Rocquencourt, France
Formal C semantics: CompCert and the C standard Robbert Krebbers 1 - - PowerPoint PPT Presentation
Formal C semantics: CompCert and the C standard Robbert Krebbers 1 Xavier Leroy 2 Freek Wiedijk 1 1 ICIS, Radboud University Nijmegen, The Netherlands 2 Inria Paris-Rocquencourt, France July 17, 2014 @ ITP, Vienna, Austria 1 Underspecification
1
1ICIS, Radboud University Nijmegen, The Netherlands 2Inria Paris-Rocquencourt, France
2
2
3
4
5
5
6
6
6
6
6
6
6
6
6
6
6
7
7
7
8
8
(bs1 , 0)0 (bs1 , 0)1 (bs1 , 0)2 (bs1 , 0)3
8
(bs1 , 0)0 (bs1 , 0)1 (bs1 , 0)2 (bs1 , 0)3
8
(bs1 , 0)0 (bs1 , 0)1 (bs1 , 0)2 (bs1 , 0)3
8
(bs1 , 0)0 (bs1 , 0)1 (bs1 , 0)2 (bs1 , 0)3
8
(bs1 , 0)0 (bs1 , 0)1 (bs1 , 0)2 (bs1 , 0)3
8
(bs1 , 0)0 (bs1 , 0)1 (bs1 , 0)2 (bs1 , 0)3
(bs1 , 0)0
8
(bs1 , 0)0 (bs1 , 0)1 (bs1 , 0)2 (bs1 , 0)3
(bs1 , 0)0 (bs1 , 0)1
8
(bs1 , 0)0 (bs1 , 0)1 (bs1 , 0)2 (bs1 , 0)3
(bs1 , 0)0 (bs1 , 0)1 (bs1 , 0)2
8
(bs1 , 0)0 (bs1 , 0)1 (bs1 , 0)2 (bs1 , 0)3
(bs1 , 0)0 (bs1 , 0)1 (bs1 , 0)2 (bs1 , 0)3
9
10
◮ Comparing with end-of-array pointers ◮ Byte-wise pointer copy
◮ Small changes to the semantics ◮ Involves proofs of many compilation passes
11