The 13th ACM SIGPLAN International Workshop on the State Of the Art in Pro- gram Analysis (SOAP’24) is co-located with the 45th ACM SIGPLAN International Conference on Programming Language Design and Implementation (PLDI’24). In line with past workshops, SOAP’24 aims to bring together members of the program analysis community to share new developments and shape innovations in program analysis.
Proceeding Downloads
Dr Wenowdis: Specializing Dynamic Language C Extensions using Type Information
C-based interpreters such as CPython make extensive use of C "extension" code, which is opaque to static analysis tools and faster runtimes with JIT compilers, such as PyPy. Not only are the extensions opaque, but the interface between the dynamic ...
Interleaving Static Analysis and LLM Prompting
This paper presents a new approach for using Large Language Models (LLMs) to improve static program analysis. Specifically, during program analysis, we interleave calls to the static analyzer and queries to the LLM: the prompt used to query the LLM is ...
A Better Approximation for Interleaved Dyck Reachability
Interleaved Dyck reachability is a standard, graph-based formulation of a plethora of static analyses that seek to be context- and field- sensitive, where each type of sensitivity is expressed via a CFL/Dyck language. Unfortunately, the problem is well-...
Interactive Source-to-Source Optimizations Validated using Static Resource Analysis
Developments in hardware have delivered formidable computing power. Yet, the increased hardware complexity has made it a real challenge to develop software that exploits the hardware to its full potential. Numerous approaches have been explored to help ...
When to Stop Going Down the Rabbit Hole: Taming Context-Sensitivity on the Fly
Context-sensitive analysis of programs containing recursive procedures may be expensive, in particular, when using expressive domains, rendering the set of possible contexts large or even infinite. Here, we present a general framework for context-...
ValBench: Benchmarking Exact Value Analysis
Value analysis is an important building block in static program analysis. While several approaches have been proposed, evaluating and comparing them is not trivial. Up to this day, a reliable and large benchmark specifically for value analysis is ...
Static Analysis for Transitioning to CHERI C/C++
We describe and evaluate custom static analyses to support transitioning C/C++ code to CHERI hardware. CHERI is a novel architectural extension, implemented for RISC-V and AArch64, that uses capabilities to provide fine-grained memory protection and ...
Misconceptions about Loops in C
Loop analysis is a key component of static analysis tools. Unfortunately, there are several rare edge cases. As a tool moves from academic prototype to production-ready, obscure cases can and do occur. This results in loop analysis being a key source of ...
Index Terms
- Proceedings of the 13th ACM SIGPLAN International Workshop on the State Of the Art in Program Analysis