Mix Your Contexts Well: Opportunities Unleashed by Recent Advances in Scaling Context-Sensitivity
Context-sensitive heap analyses, established to offer a much enhanced precision over context-insensitive analyses, do not scale well for large programs, specially for OO languages such as Java. It is known that the choice of the underlying context abstraction and the input-program characteristics play an important role in deciding whether the analysis scales while resulting in good enough precision. The problem becomes quite intriguing as two of the most popular categories of context abstractions (call-site- and object-sensitive) lead to theoretically incomparable precision. In this paper, we address this problem by first doing a detailed comparative study (in terms of precision and efficiency) of the existing approaches, both in the presence and absence of heap-cloning. In addition, we propose novel context abstractions that mix the advantages of LSRV contexts (a highly scalable abstraction with precision matching that of the call-site based context abstraction) and object-sensitivity, to lead to a new sweet-spot in the arena.
We first enhance the precision of LSRV contexts using heap cloning. Then, motivated by the scalability of the LSRV approaches, we propose the idea of mixing various context abstractions, and add the advantages of kk-object-sensitive analyses to LSRV contexts, in an efficient manner. The resultant abstraction, which we call lsrvkobjHlsrvkobjH, also leads to a novel connection between the two broad variants of otherwise incomparable context-sensitive analyses. We implement our approaches to perform control-flow analysis of Java programs, and compare them with corresponding kk-object-sensitive analyses and LSRV-contexts based analyses. The results show that the newer proposals not only enhance the precision of both LSRV contexts and object-sensitive analyses, but also scale well to large programs
Sun 23 FebDisplayed time zone: Pacific Time (US & Canada) change
08:30 - 10:00 | |||
08:30 22mResearch paper | Mix Your Contexts Well: Opportunities Unleashed by Recent Advances in Scaling Context-Sensitivity Main Conference | ||
08:52 22mResearch paper | Secure Delivery of Program Properties Through Optimizing Compilation Main Conference Son Tuan Vu Sorbonne Université, CNRS, Laboratoire d'Informatique de Paris 6, LIP6, Karine Heydemann Sorbonne Université, CNRS, Laboratoire d'Informatique de Paris 6, LIP6, Albert Cohen Google, Arnaud de Grandmaison Arm | ||
09:15 22mResearch paper | Scalable Pointer Analysis of Data Structures Using Semantic Models Main Conference | ||
09:37 22mResearch paper | Vectorization-Aware Loop Unrolling with Seed Forwarding Main Conference Rodrigo C. O. Rocha University of Edinburgh, Vasileios Porpodas Intel Corporation, Pavlos Petoumenos University of Edinburgh, Luís Góes PUC Minas, Zheng Wang University of Leeds, Murray Cole University of Edinburgh, Hugh Leather University of Edinburgh |