Write a Blog >>
SPLASH 2019
Sun 20 - Fri 25 October 2019 Athens, Greece
Wed 23 Oct 2019 11:45 - 12:07 at Attica - Abstract Interpretation Chair(s): John Hughes

Static analysis tools for JavaScript must strike a delicate balance, achieving the level of precision required by the most complex features of target programs without incurring prohibitively high analysis time.
For example, reasoning about dynamic property accesses sometimes requires precise relational information connecting the object, the dynamically-computed property name, and the property value.
Even a minor precision loss at such critical program locations can result in a proliferation of spurious dataflow that renders the analysis results useless.

We present a technique by which a conventional non-relational static dataflow analysis can be combined soundly with a value refinement mechanism to increase precision on demand at critical locations.
Crucially, our technique is able to incorporate relational information from the value refinement mechanism into the non-relational domain of the dataflow analysis.

We demonstrate the feasibility of this approach by extending an existing JavaScript static analysis with a demand-driven value refinement mechanism that relies on backwards abstract interpretation.
Our evaluation finds that precise analysis of widely used JavaScript utility libraries depends heavily on the precision at a small number of critical locations that can be identified heuristically, and that backwards abstract interpretation is an effective mechanism to provide that precision on demand.

Wed 23 Oct

Displayed time zone: Beirut change

11:00 - 12:30
Abstract InterpretationOOPSLA at Attica
Chair(s): John Hughes Chalmers University of Technology, Sweden
11:00
22m
Talk
BDA: Practical Dependence Analysis for Binary Executables by Unbiased Whole-Program Path Sampling and Per-Path Abstract InterpretationACM SIGPLAN Distinguished Paper Award
OOPSLA
Zhuo Zhang Purdue University, Wei You Purdue University, Guanhong Tao Purdue University, Guannan Wei Purdue University, Yonghwi Kwon University of Virginia, Xiangyu Zhang Purdue University
DOI Pre-print
11:22
22m
Talk
Staged Abstract Interpreters: Fast and Modular Whole-Program Analysis via Meta-programming
OOPSLA
Guannan Wei Purdue University, Yuxuan Chen Purdue University, Tiark Rompf Purdue University
DOI
11:45
22m
Talk
Static Analysis with Demand-Driven Value Refinement
OOPSLA
Benno Stein University of Colorado Boulder, Benjamin Barslev Nielsen Aarhus University, Bor-Yuh Evan Chang University of Colorado Boulder | Amazon, Anders Møller Aarhus University
DOI Pre-print
12:07
22m
Talk
Sound and Reusable Components for Abstract Interpretation
OOPSLA
Sven Keidel JGU Mainz, Sebastian Erdweg JGU Mainz
DOI