Modular unification of unilingual pointer analyses to multilingual FFI-based programs

Jyoti Prakash*, Abhishek Tiwari, Christian Hammer

*Corresponding author for this work

Research output: Contribution to journalJournal articleResearchpeer-review

1 Downloads (Pure)

Abstract

Modular analysis of polyglot applications is challenging because flows of heap objects must be resolved across language boundaries. The state-of-the-art analyses for polyglot applications have two fundamental limitations. First, they assume explicit boundaries between the guest and the host language to determine inter-language dataflows. Second, they rely on specific analyses of the host and guest languages. The former assumption is impractical concerning recent advancements in polyglot programming techniques, while the latter disregards advances in pointer analysis of the underlying languages. In this work, we propose to extend existing pointer analyses with a novel summary specialization technique that unifies points-to sets across language boundaries. Our novel technique leverages combinations of host and guest analyses with minor modifications. We demonstrate the efficacy and generalizability of our approach by evaluating it with two polyglot language models: Java-C communication via Android's NDK and Java-Python communication in GraalVM.

Original languageEnglish
Article number103278
JournalScience of Computer Programming
Volume243
Number of pages21
ISSN0167-6423
DOIs
Publication statusPublished - Jul 2025

Keywords

  • Multilingual static analysis
  • Pointer analysis
  • Static program analysis

Fingerprint

Dive into the research topics of 'Modular unification of unilingual pointer analyses to multilingual FFI-based programs'. Together they form a unique fingerprint.

Cite this