Atomicity Refinement for Verified Compilation

被引:0
|
作者
Jagannathan, Suresh [1 ]
Petri, Gustavo [1 ]
Vitek, Jan [1 ]
Pichardie, David [2 ]
Laporte, Vincent [3 ]
机构
[1] Purdue Univ, W Lafayette, IN 47907 USA
[2] Inria, Irisa, ENS Rennes, Paris, France
[3] Univ Rennes 1, Irisa, F-35014 Rennes, France
关键词
D O I
10.1145/2666356.2594346
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We consider the verified compilation of high-level managed languages like Java or C# whose intermediate representations provide support for shared-memory synchronization and automatic memory management. In this environment, the interactions between application threads and the language runtime (e. g., the garbage collector) are regulated by compiler-injected code snippets. Example of snippets include allocation fast paths among others. In our TOPLAS paper we propose a refinement-based proof methodology that precisely relates concurrent code expressed at different abstraction levels, cognizant throughout of the relaxed memory semantics of the underlying processor. Our technique allows the compiler writer to reason compositionally about the atomicity of low-level concurrent code used to implement managed services. We illustrate our approach with examples taken from the verification of a concurrent garbage collector.
引用
收藏
页码:27 / 27
页数:1
相关论文
共 50 条
  • [31] CompCert: A Journey through the Landscape of Mechanized Semantics for Verified Compilation
    Blazy, Sandrine
    [J]. PROCEEDINGS OF THE 12TH ACM SIGPLAN INTERNATIONAL CONFERENCE ON CERTIFIED PROGRAMS AND PROOFS, CPP 2023, 2023, : 1 - 1
  • [32] Verified secure compilation for mixed-sensitivity concurrent programs
    Sison, Robert
    Murray, Toby
    [J]. JOURNAL OF FUNCTIONAL PROGRAMMING, 2021, 31
  • [33] Mechanized Semantics and Verified Compilation for a Dataflow Synchronous Language with Reset
    Bourke, Timothy
    Brun, Lelio
    Pouzet, Marc
    [J]. PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2020, 4
  • [34] Verified Compilation of CakeML to Multiple Machine-Code Targets
    Fox, Anthony
    Myreen, Magnus O.
    Tan, Yong Kiam
    Kumar, Ramana
    [J]. PROCEEDINGS OF THE 6TH ACM SIGPLAN CONFERENCE ON CERTIFIED PROGRAMS AND PROOFS, CPP'17, 2017, : 125 - 137
  • [35] CryptOpt: Verified Compilation with Randomized Program Search for Cryptographic Primitives
    Kuepper, Joel
    Erbsen, Andres
    Gross, Jason
    Conoly, Owen
    Sun, Chuyue
    Tian, Samuel
    Wu, David
    Chlipala, Adam
    Chuengsatiansup, Chitchanok
    Genkin, Daniel
    Wagner, Markus
    Yarom, Yuval
    [J]. PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2023, 7 (PLDI):
  • [36] From Mechanized Semantics to Verified Compilation: the Clight Semantics of CompCert
    Blazy, Sandrine
    [J]. FUNDAMENTAL APPROACHES TO SOFTWARE ENGINEERING, FASE 2024, 2024, 14573 : 1 - 21
  • [37] KNOWLEDGE COMPILATION AND REFINEMENT FOR FAULT-DIAGNOSIS
    KOBAYASHI, S
    NAKAMURA, K
    [J]. IEEE EXPERT-INTELLIGENT SYSTEMS & THEIR APPLICATIONS, 1991, 6 (05): : 39 - 46
  • [38] Towards Formally Verified Compilation of Tag-Based Policy Enforcement
    Chhak, C. H. R.
    Tolmach, Andrew
    Anderson, Sean
    [J]. CPP '21: PROCEEDINGS OF THE 10TH ACM SIGPLAN INTERNATIONAL CONFERENCE ON CERTIFIED PROGRAMS AND PROOFS, 2021, : 137 - 151
  • [39] Dargent: A Silver Bullet for Verified Data Layout Refinement
    Chen, Zilin
    Lafont, Ambroise
    O'Connor, Liam
    Keller, Gabriele
    McLaughlin, Craig
    Jackson, Vincent
    Rizkallah, Christine
    [J]. PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2023, 7 (POPL):
  • [40] A refinement calculus for the synthesis of verified hardware descriptions in VHDL
    Breuer, PT
    Kloos, CD
    Lopez, AM
    Madrid, NM
    Fernandez, LS
    [J]. ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 1997, 19 (04): : 586 - 616