Most application code evolves incrementally, and especially so when being maintained after the applications have been deployed. Yet, most data-flow analyses do not take advantage of this fact. Instead they require clients to recompute the entire analysis even if little code has changed - a time consuming undertaking, especially with large libraries or when running static analyses often, e.g., on a continuous-integration server. In this work, we present Reviser, a novel approach for automatically and efficiently updating inter-procedural data-flow analysis results in response to incremental program changes. Reviser follows a clear-and-propagate philosophy, aiming at clearing and recomputing analysis information only where required, thereb...
The paper describes the design and implementation of an adaptive recompilation framework for Rotor, ...
International audienceChange prediction helps developers by recommending program entities that will ...
Developers use analysis tools to help write, debug, and understand software systems under developmen...
Most application code evolves incrementally, and especially so when being maintained after the appli...
Most application code evolves incrementally, and especially so when being maintained after the appli...
To support developers in their day–to–day work, Integrated Develoment En- vironments (IDEs) incorpor...
Data-flow analysis is widely used in extracting from source programs useful information for program ...
Recent work in the area of software engineering has centered on the creation of sophisticated enviro...
The development of efficient data flow analyses is a complicated task. As requirements change and sp...
This thesis proposes a framework for easy development of static analyses, whose results are incremen...
Software engineering research often requires analyzing multiple revisions of several software projec...
The IFDS and IDE frameworks by Reps, Horwitz and Sagiv are two general frameworks for the inter-proc...
The goal of a program analysis framework is to decrease the effort required of a program analysis de...
Abstract—During software development, the sooner a developer learns how code changes affect program ...
Data-flow analysis is an integral part of any aggressive optimizing compiler. We propose a framework...
The paper describes the design and implementation of an adaptive recompilation framework for Rotor, ...
International audienceChange prediction helps developers by recommending program entities that will ...
Developers use analysis tools to help write, debug, and understand software systems under developmen...
Most application code evolves incrementally, and especially so when being maintained after the appli...
Most application code evolves incrementally, and especially so when being maintained after the appli...
To support developers in their day–to–day work, Integrated Develoment En- vironments (IDEs) incorpor...
Data-flow analysis is widely used in extracting from source programs useful information for program ...
Recent work in the area of software engineering has centered on the creation of sophisticated enviro...
The development of efficient data flow analyses is a complicated task. As requirements change and sp...
This thesis proposes a framework for easy development of static analyses, whose results are incremen...
Software engineering research often requires analyzing multiple revisions of several software projec...
The IFDS and IDE frameworks by Reps, Horwitz and Sagiv are two general frameworks for the inter-proc...
The goal of a program analysis framework is to decrease the effort required of a program analysis de...
Abstract—During software development, the sooner a developer learns how code changes affect program ...
Data-flow analysis is an integral part of any aggressive optimizing compiler. We propose a framework...
The paper describes the design and implementation of an adaptive recompilation framework for Rotor, ...
International audienceChange prediction helps developers by recommending program entities that will ...
Developers use analysis tools to help write, debug, and understand software systems under developmen...