JavaScript Pointer Analysis with Adaptive Heap Abstraction
Wenyuan Xu, Anders Møller
Abstract
The conventional approach to represent objects in static program analysis is to use allocation-site abstraction. This design choice may lead to redundant computations when many abstract objects are similar. Existing mechanisms that aim to merge such objects are not effective for JavaScript. We propose a novel adaptive heap abstraction technique that during analysis discovers and merges similar abstract objects, thereby reducing the analysis complexity while preserving most of the precision.
The technique has been implemented in a state-of-the-art program analyzer for JavaScript. On a collection of 96 challenging programs, it yields a 2X speedup on average (up to 17X) with a negligible loss of precision. The experimental results also show the effects of various analysis configurations.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext a3262fab-0a29-4b50-b7dc-9178e06598a3Cited by top-tier papers1
Ask how each one uses itBuilds on6
- Modular call graph construction for security scanning of Node.js applicationsBenjamin Barslev Nielsen, Martin Toldam Torp, Anders MøllerISSTA 2021 · 47 citations
- Efficient Static Vulnerability Analysis for JavaScript with Multiversion Dependency GraphsMafalda Ferreira, Miguel Monteiro, Tiago Brito, Miguel E. Coimbra et al.PLDI 2024 · 13 citations
- Scaling Type-Based Points-to Analysis with SaturationChristian Wimmer, Codrut Stancu, David Kozak, Thomas WürthingerPLDI 2024 · 12 citations
- Reducing Static Analysis Unsoundness with Approximate InterpretationMathias Rud Laursen, Wenyuan Xu, Anders MøllerPLDI 2024 · 5 citations
- Mining Node.js Vulnerabilities via Object Dependence Graph and QuerySong Li, Mingqing Kang, Jianwei Hou, Yinzhi CaoUSENIX Security 2022
Related papers
- ABSINT-AI: Agentic Heap Abstractions for Abstract InterpretationMichael Wang, Kexin Pei, Armando Solar-LezamaICML 2026
- IRIDIUM: A Framework for Statically Optimizing JavaScript ProgramsMeetesh Kalpesh Mehta, Anirudh Garg, Aneeket Yadav, Manas ThakurOOPSLA 2026
- Automatically deriving JavaScript static analyzers from specifications using Meta-level static analysisJihyeok Park, Seungmin An, Sukyoung RyuFSE 2022 · 10 citations
- Efficient module-level dynamic analysis for dynamic languages with module recontextualizationNikos Vasilakis, Grigoris Ntousakis, Veit Heller, Martin C. RinardFSE 2021 · 6 citations
- Optimistic Stack Allocation and Dynamic Heapification for Managed RuntimesAditya Anand, Solai Adithya, Swapnil Rustagi, Priyam Seth et al.PLDI 2024 · 4 citations
