Fixpoint Reuse for Incremental JavaScript Analysis
Frequently updated programs cause the cost of static analysis to be multiplied by the number of program versions. When the baseline cost is high (for example, analyzing JavaScript), this multiplicative factor can be prohibitive. As an example, JavaScript-based browser addons are continually updated and there are known instances where malicious code has been injected into such updates; thus the addons must be repeatedly vetted each time an update happens.
Incremental analysis reduces this cumulative cost by reusing analysis results of previous versions to reduce the cost of analyzing an updated version. However, existing incremental analyses are not applicable to dynamic programming languages such as JavaScript because they make assumptions that don’t hold in this setting. In this paper, we propose the first incremental static analysis for JavaScript. We do not require perfect precision, but we show empirically that there is negligible precision loss in practice. Our technique includes a method for matching code between JavaScript program versions, a non-trivial problem which existing techniques do not solve. For our benchmarks, drawn from real browser addons and node.js programs, our incremental analysis performance is on average within a factor of two of an optimal incremental analysis.
Sat 22 JunDisplayed time zone: Tijuana, Baja California change
09:15 - 11:00 | Performance and Optimizations for Program Analysis ToolsSOAP at 106A Chair(s): Neville Grech University of Athens | ||
09:15 20mTalk | Commit-time Incremental Analysis SOAP | ||
09:35 20mTalk | Know Your Analysis: How Instrumentation Aids Understanding Static Analysis SOAP Philipp Dominik Schubert Heinz Nixdorf Institut, Paderborn University, Richard Leer Heinz Nixdorf Institut, Paderborn University, Ben Hermann Paderborn University, Eric Bodden Heinz Nixdorf Institut, Paderborn University and Fraunhofer IEM Pre-print Media Attached | ||
09:55 20mTalk | Fixpoint Reuse for Incremental JavaScript Analysis SOAP Lawton Nichols , Mehmet Emre University of California, Santa Barbara, Ben Hardekopf UC Santa Barbara | ||
10:15 80mTalk | Program Analysis for Process Migration SOAP | ||
10:35 25mOther | Open Discussion on Previous Talks 1 SOAP |