Efficient and Precise Points-to Analysis: Modeling the Heap by Merging Equivalent Automata
Mainstream points-to analysis techniques for object-oriented languages rely predominantly on the allocation-site abstraction to model heap objects. We present MAHJONG, a novel heap abstraction that is specifically developed to address the needs of an important class of type-dependent clients, such as call graph construction, devirtualization and may-fail casting. By merging equivalent automata representing type-consistent objects that are created by the allocation-site abstraction, MAHJONG enables an allocation-site-based points-to analysis to run significantly faster while achieving nearly the same precision for type-dependent clients. MAHJONG is simple conceptually, efficient, and drops easily on any allocation-site-based points-to analysis. We demonstrate its effectiveness by discussing some insights on why it is a better alternative of the allocation-site abstraction for type-dependent clients and evaluating it extensively on 12 large real-world Java programs with five context-sensitive points-to analyses and three widely used type-dependent clients. MAHJONG is expected to provide significant benefits for many program analyses where call graphs are required.
Mon 19 JunDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
16:10 - 17:50 | Static AnalysisPLDI Research Papers at Aula Master Chair(s): Loris D'Antoni University of Wisconsin–Madison | ||
16:10 25mTalk | Compositional Recurrence Analysis Revisited PLDI Research Papers Zachary Kincaid Princeton University, Jason Breck University of Wisconsin-Madison, Ashkan Forouhi Boroujeni University of Wisconsin-Madison, Thomas Reps University of Wisconsin - Madison and Grammatech Inc. Media Attached | ||
16:35 25mTalk | Context Transformations for Pointer Analysis PLDI Research Papers Media Attached | ||
17:00 25mTalk | Efficient and Precise Points-to Analysis: Modeling the Heap by Merging Equivalent Automata PLDI Research Papers Pre-print Media Attached | ||
17:25 25mTalk | Static Deadlock Detection for Asynchronous C# Programs PLDI Research Papers Media Attached |