<div class="csl-bib-body">
<div class="csl-entry">Loitzl, A., & Zuleger, F. (2024). Modeling Register Pairs in CompCert. In N. Kosmatov & L. Kovács (Eds.), <i>Integrated Formal Methods : 19th International Conference, IFM 2024 Manchester, UK, November 13–15, 2024 Proceedings</i> (pp. 128–147). Springer. https://doi.org/10.1007/978-3-031-76554-4_8</div>
</div>
-
dc.identifier.uri
http://hdl.handle.net/20.500.12708/210868
-
dc.description.abstract
The CompCert C compiler is a moderately optimizing, formally verified compiler that ensures the preservation of the input program’s semantics through a machine-checkable correctness proof. We introduce CompCert, an extension of the CompCert compiler, which incorporates the modeling of register pairs. This enhancement targets 32-bit architectures, such as the 32-bit Arm, which combine two registers to support 64-bit operands. So far, CompCert abstracts register pairs as 64-bit registers and allocates the entire pair when operating on 32-bit values, effectively cutting the number of available registers for 32-bit computations in half. This creates a harder register allocation problem and the emitted code requires post-processing outside of the formally verified compiler to comply with calling conventions. Our enhancement models all of Arm’s registers, improving register allocation and the generated code’s size. Additionally, it models the correct calling conventions for floating-point arguments within the formal semantics, eliminating the need for unverified modifications and therefore decreasing the trusted computing base (TCB). We adapt the proofs for all CompCert-supported architectures and demonstrate that, despite a slight increase in compile time, CompCert generates code that is either smaller or comparable in size to that produced by the original CompCert.
en
dc.language.iso
en
-
dc.relation.ispartofseries
Lecture Notes in Computer Science
-
dc.subject
Verified Complilers
en
dc.subject
Register Allocation
en
dc.subject
Register Pairs
en
dc.title
Modeling Register Pairs in CompCert
en
dc.type
Inproceedings
en
dc.type
Konferenzbeitrag
de
dc.relation.publication
Integrated Formal Methods : 19th International Conference, IFM 2024 Manchester, UK, November 13–15, 2024 Proceedings
-
dc.contributor.affiliation
TU Wien, Austria
-
dc.relation.isbn
978-3-031-76554-4
-
dc.relation.issn
0302-9743
-
dc.description.startpage
128
-
dc.description.endpage
147
-
dc.type.category
Full-Paper Contribution
-
dc.relation.eissn
1611-3349
-
tuw.booktitle
Integrated Formal Methods : 19th International Conference, IFM 2024 Manchester, UK, November 13–15, 2024 Proceedings
-
tuw.container.volume
15234
-
tuw.peerreviewed
true
-
tuw.relation.publisher
Springer
-
tuw.relation.publisherplace
Cham
-
tuw.researchTopic.id
I1
-
tuw.researchTopic.name
Logic and Computation
-
tuw.researchTopic.value
100
-
tuw.publication.orgunit
E192-04 - Forschungsbereich Formal Methods in Systems Engineering
-
tuw.publisher.doi
10.1007/978-3-031-76554-4_8
-
dc.description.numberOfPages
20
-
tuw.author.orcid
0009-0002-7417-2537
-
tuw.author.orcid
0000-0003-1468-8398
-
tuw.editor.orcid
0000-0003-1557-2813
-
tuw.editor.orcid
0000-0001-6282-3190
-
tuw.event.name
19th International Conference, IFM 2024
en
tuw.event.startdate
13-11-2024
-
tuw.event.enddate
15-11-2024
-
tuw.event.online
On Site
-
tuw.event.type
Event for scientific audience
-
tuw.event.place
Manchester
-
tuw.event.country
GB
-
tuw.event.presenter
Loitzl, Alexander
-
wb.sciencebranch
Informatik
-
wb.sciencebranch
Mathematik
-
wb.sciencebranch.oefos
1020
-
wb.sciencebranch.oefos
1010
-
wb.sciencebranch.value
80
-
wb.sciencebranch.value
20
-
item.cerifentitytype
Publications
-
item.languageiso639-1
en
-
item.fulltext
no Fulltext
-
item.openairetype
conference paper
-
item.openairecristype
http://purl.org/coar/resource_type/c_5794
-
item.grantfulltext
none
-
crisitem.author.dept
E192-04 - Forschungsbereich Formal Methods in Systems Engineering