Learning graph-based heuristics for pointer analysis without handcrafting application-specific features
Minseok Jeon, Myungho Lee, Hakjoo Oh
摘要
We present Graphick, a new technique for automatically learning graph-based heuristics for pointer analysis. Striking a balance between precision and scalability of pointer analysis requires designing good analysis heuristics. For example, because applying context sensitivity to all methods in a real-world program is impractical, pointer analysis typically uses a heuristic to employ context sensitivity only when it is necessary. Past research has shown that exploiting the program's graph structure is a promising way of developing cost-effective analysis heuristics, promoting the recent trend of łgraph-based heuristicsž that work on the graph representations of programs obtained from a pre-analysis. Although promising, manually developing such heuristics remains challenging, requiring a great deal of expertise and laborious effort. In this paper, we aim to reduce this burden by learning graph-based heuristics automatically, in particular without hand-crafted application-specific features. To do so, we present a feature language to describe graph structures and an algorithm for learning analysis heuristics within the language. We implemented Graphick on top of Doop and used it to learn graph-based heuristics for object sensitivity and heap abstraction. The evaluation results show that our approach is general and can generate high-quality heuristics. For both instances, the learned heuristics are as competitive as the existing state-of-the-art heuristics designed manually by analysis experts.
CCS Concepts: • Software and its engineering → Automated static analysis;
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper19
- Making pointer analysis more precise by unleashing the power of selective context sensitivityTian Tan, Yue Li, Xiaoxing Ma, Chang Xu 等OOPSLA 2021 · 被引用 39 次
- Context Sensitivity without Contexts: A Cut-Shortcut Approach to Fast and Precise Pointer AnalysisWenjie Ma, Shengyuan Yang, Tian Tan, Xiaoxing Ma 等PLDI 2023 · 被引用 29 次
- Tai-e: A Developer-Friendly Static Analysis Framework for Java by Harnessing the Good Designs of ClassicsTian Tan, Yue LiISSTA 2023 · 被引用 26 次
- Striking a Balance: Pruning False-Positives from Static Call GraphsAkshay Utture, Shuyang Liu, Christian Gram Kalhauge, Jens PalsbergICSE 2022 · 被引用 18 次
- Return of CFA: call-site sensitivity can be superior to object sensitivity even for object-oriented programsMinseok Jeon, Hakjoo OhPOPL 2022 · 被引用 15 次
它引用的顶会 Paper2
相关 Paper
- Towards a Theoretically-Backed and Practical Framework for Selective Object-Sensitive Pointer AnalysisChaoyue Zhang, Longlong Lu, Yifei Lu, Minxue Pan 等OOPSLA 2025
- Generic sensitivity: customizing context-sensitive pointer analysis for genericsHaofeng Li, Jie Lu, Haining Meng, Liqing Cao 等FSE 2022 · 被引用 6 次
- Indexing the extended Dyck-CFL reachability for context-sensitive program analysisQingkai Shi, Yongchao Wang, Peisen Yao, Charles ZhangOOPSLA 2022 · 被引用 11 次
- BinDSA: Efficient, Precise Binary-Level Pointer Analysis with Context-Sensitive Heap ReconstructionLian Gao, Heng YinISSTA 2025 · 被引用 1 次
- Scaling Abstraction Refinement for Program Analyses in Datalog using Graph Neural NetworksZhenyu Yan, Xin Zhang, Peng DiOOPSLA 2024 · 被引用 1 次
