Protocol and typestate analyses often report some sequences of statements ending at a program point P that needs to be scrutinized, since P may be erroneous or imprecisely analyzed. Program slicing focuses only on the behavior at P by computing a slice of the program affecting the values at P. In this paper, we propose to restrict our attention to the subset of that behavior at P affected by one or several statement sequences, called a sequential criterion (SC). By leveraging the ordering information in a SC, e.g., the temporal order in a few valid/invalid API method invocation sequences, we introduce a new technique, program tailoring, to compute a tailored program that comprises the statements in all possible execution paths passing through at least one sequence in SC in the given order. With a prototyping implementation, Tailor, we show why tailoring is practically useful by conducting two case studies on seven large real-world Java applications. For program debugging and understanding, Tailor can complement program slicing by removing SC-irrelevant statements. For program analysis, Tailor can enable a pointer analysis, which is unscalable to a program, to perform a more focused and therefore potentially scalable analysis to its specific parts containing hard language features such as reflection.
Thu 21 JulDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
Thu 21 Jul
Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
15:30 - 16:45 | |||
15:30 25mTalk | Object Inheritance without Classes Research Track Timothy Jones Victoria University of Wellington, Michael Homer Victoria University of Wellington, James Noble Victoria University of Wellington, Kim Bruce Pomona College Link to publication DOI Pre-print Media Attached | ||
15:55 25mTalk | Program Tailoring: Slicing by Sequential Criteria Research Track Yue Li UNSW Australia, Tian Tan UNSW Australia, Yifei Zhang UNSW Australia, Jingling Xue UNSW Australia Link to publication DOI Pre-print Media Attached | ||
16:20 25mTalk | Scopes Describe Frames: A Uniform Model for Memory Layout in Dynamic Semantics Research Track Casper Bach Poulsen TU Delft, Pierre Neron French Network and Information Security Agency (ANSSI), Andrew Tolmach Portland State University, Eelco Visser Delft University of Technology Link to publication DOI Pre-print Media Attached |