PKRU-Safe: Automatically locking down the heap between safe and unsafe languages

P Kirth, M Dickerson, S Crane, P Larsen… - Proceedings of the …, 2022 - dl.acm.org
After more than twenty-five years of research, memory safety violations remain one of the
major causes of security vulnerabilities in real-world software. Memory-safe languages, like …

Alive2: bounded translation validation for LLVM

NP Lopes, J Lee, CK Hur, Z Liu, J Regehr - Proceedings of the 42nd …, 2021 - dl.acm.org
We designed, implemented, and deployed Alive2: a bounded translation validation tool for
the LLVM compiler's intermediate representation (IR). It limits resource consumption by, for …

Stacked borrows: an aliasing model for Rust

R Jung, HH Dang, J Kang, D Dreyer - Proceedings of the ACM on …, 2019 - dl.acm.org
Type systems are useful not just for the safety guarantees they provide, but also for helping
compilers generate more efficient code by simplifying important program analyses. In Rust …

Finding typing compiler bugs

S Chaliasos, T Sotiropoulos, D Spinellis… - Proceedings of the 43rd …, 2022 - dl.acm.org
We propose a testing framework for validating static typing procedures in compilers. Our
core component is a program generator suitably crafted for producing programs that are …

Modular, compositional, and executable formal semantics for LLVM IR

Y Zakowski, C Beck, I Yoon, I Zaichuk, V Zaliva… - Proceedings of the …, 2021 - dl.acm.org
This paper presents a novel formal semantics, mechanized in Coq, for a large, sequential
subset of the LLVM IR. In contrast to previous approaches, which use relationally-specified …

Understanding and evolving the Rust programming language

R Jung - 2020 - publikationen.sulb.uni-saarland.de
Rust is a young systems programming language that aims to fill the gap between high-level
languages—which provide strong static guarantees like memory and thread safety—and low …

The leaky semicolon: compositional semantic dependencies for relaxed-memory concurrency

A Jeffrey, J Riely, M Batty, S Cooksey, I Kaysin… - Proceedings of the …, 2022 - dl.acm.org
Program logics and semantics tell a pleasant story about sequential composition: when
executing (S1; S2), we first execute S1 then S2. To improve performance, however …

[PDF][PDF] Declare4Py: A Python Library for Declarative Process Mining.

I Donadello, F Riva, FM Maggi, A Shikhizada - BPM (PhD/Demos), 2022 - bia.unibz.it
In process mining, procedural process models can be difficult to manage when the process
is unpredictable and characterized by many possible exceptions since they can easily …

K-LLVM: a relatively complete semantics of LLVM IR

L Li, EL Gunter - 34th European Conference on Object-Oriented …, 2020 - drops.dagstuhl.de
Abstract LLVM [Lattner and Adve, 2004] is designed for the compile-time, link-time and run-
time optimization of programs written in various programming languages. The language …

VIP: verifying real-world C idioms with integer-pointer casts

R Lepigre, M Sammler, K Memarian… - Proceedings of the …, 2022 - dl.acm.org
Systems code often requires fine-grained control over memory layout and pointers,
expressed using low-level (eg, bitwise) operations on pointer values. Since these operations …