2 releases

0.1.2 Oct 5, 2023
0.1.1 Oct 5, 2023

#784 in Programming languages

23 downloads per month

BSD-3-Clause

2.5MB
4K SLoC

Yet Another Pointer Analysis for LLVM

Yapall is a precise and scalable pointer analysis for LLVM. The output of Yapall can be used for a variety of program analysis tasks, including:

  • Creation of callgraphs with precise handling of indirect function calls and virtual method calls
  • Precise inter-procedural control- and data-flow analysis
  • Answering may-alias queries

Yapall is k-callsite sensitive for configurable k, field-, array-, and flow-insensitive, and performs on-the-fly callgraph construction. Yapall is written using Ascent and so is highly parallel.

For more information, see the documentation.

Acknowledgments

This material is based upon work supported by the Defense Advanced Research Projects Agency (DARPA) under Contract No. N66001-21-C-4023. Any opinions, findings and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of DARPA.

Distribution

DISTRIBUTION STATEMENT A. Approved for public release: distribution unlimited.

Dependencies

~12–20MB
~279K SLoC