arXiv · 1411.5289
Generalizing the Liveness Based Points-to Analysis
Abstract
The original liveness based flow and context sensitive points-to analysis (LFCPA) is restricted to scalar pointer variables and scalar pointees on stack and static memory. In this paper, we extend it to support heap memory and pointer expressions involving structures, unions, arrays, and pointer arithmetic. The key idea behind these extensions involves constructing bounded names for locations in terms of compile time constants (names and fixed offsets), and introducing sound approximations when it is not possible to do so. We achieve this by defining a grammar for pointer expressions, suitable memory models and location naming conventions, and some key evaluations of pointer expressions that compute the named locations. These extensions preserve the spirit of the original LFCPA which is evidenced by the fact that although the lattices and flow functions change, the overall data flow equations remain unchanged.
Explore related subjects
Keep this discovery
Uday P. Khedker, Vini Kanvar. 2014-11-21. Generalizing the Liveness Based Points-to Analysis. https://arxiv.org/abs/1411.5289
Cite the original work for its findings. Save a collection to share your selection of sources.