Skip to main navigation Skip to search Skip to main content

Incremental and demand-driven points-to analysis using logic programming

  • Stony Brook University

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

57 Scopus citations

Abstract

Several program analysis problems can be cast elegantly as a logic program. In this paper we show how recently-developed techniques for incremental evaluation of logic programs can be refined and used for deriving practical implementations of incremental program analyzers. Incremental program analyzers compute the changes to the analysis information due to small changes in the input program rather than re-analyzing the program. Demand-driven analyzers compute only the information requested by the client analysis/optimization, We describe a framework based on logic programming for implementing program analyses that combines incremental and demand driven techniques. We show the effectiveness of this approach by building a practical incremental and demand-driven context insensitive points-to analysis and evaluating this implementation for analyzing C programs with 10-70K lines of code, Experiments show that our technique can compute the changes to analysis information due to small changes in the input program in, on the average, 6% of the time it takes to reanalyze the program from scratch, and with little space overhead.

Original languageEnglish
Title of host publicationPPDP'05 - Proceedings of the Seventh ACM SIGPLAN Conference on Principles and Practice of Declarative Programming
PublisherAssociation for Computing Machinery
Pages117-128
Number of pages12
ISBN (Print)1595930906, 9781595930903
DOIs
StatePublished - 2005
EventPPDP'05 - 7th ACM SIGPLAN Conference on Principles and Practice of Declarative Programming - Lisbon, Portugal
Duration: Jul 11 2005Jul 13 2005

Publication series

NamePPDP'05 - Proceedings of the Seventh ACM SIGPLAN Conference on Principles and Practice of Declarative Programming
Volume2005

Conference

ConferencePPDP'05 - 7th ACM SIGPLAN Conference on Principles and Practice of Declarative Programming
Country/TerritoryPortugal
CityLisbon
Period07/11/0507/13/05

Keywords

  • Demand-drive analysis
  • Incremental analysis
  • Logic programming
  • Pointer analysis

Fingerprint

Dive into the research topics of 'Incremental and demand-driven points-to analysis using logic programming'. Together they form a unique fingerprint.

Cite this