Context Transformations for Pointer Analysis
Points-to analysis for Java benefits greatly from context-sensitivity. CFL-reachability and k-limited context-strings are two approaches to obtaining context sensitivity with different advantages: CFL-reachability allows local reasoning about data-value flow and thus is suitable for demand-driven analyses, whereas k-limited analyses allow object sensitivity which is a superior calling context abstraction for object-oriented languages. We combine the advantages of both approaches to obtain a context-sensitive analysis that is as precise as k-limited context-strings, but is more efficient to compute. Our key insight is based on a novel abstraction of contexts adapted from CFL-reachability that represents a relation between two calling contexts as a composition of transformations over contexts.
We formulate pointer analysis in an algebraic structure of context transformations, which is a set of functions over calling contexts closed under function composition. We show that the context representation of context-string-based analyses is an explicit enumeration of all input and output values of context transformations. CFL-reachability-based pointer analysis is formulated to use call-strings as contexts, but the context transformations concept can be applied to any context abstraction used in k-limited analyses, including object and type sensitive analysis. The result is a more efficient algorithm for computing context-sensitive results for a wide variety of context configurations.
Mon 19 Jun Times are displayed in time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
16:10 - 17:50: Static AnalysisPLDI Research Papers at Aula Master Chair(s): Loris D'AntoniUniversity of Wisconsin–Madison | |||
16:10 - 16:35 Talk | Compositional Recurrence Analysis Revisited PLDI Research Papers Zachary KincaidPrinceton University, Jason BreckUniversity of Wisconsin-Madison, Ashkan Forouhi BoroujeniUniversity of Wisconsin-Madison, Thomas RepsUniversity of Wisconsin - Madison and Grammatech Inc. Media Attached | ||
16:35 - 17:00 Talk | Context Transformations for Pointer Analysis PLDI Research Papers Media Attached | ||
17:00 - 17:25 Talk | Efficient and Precise Points-to Analysis: Modeling the Heap by Merging Equivalent Automata PLDI Research Papers Pre-print Media Attached | ||
17:25 - 17:50 Talk | Static Deadlock Detection for Asynchronous C# Programs PLDI Research Papers Media Attached |