## Abstract

An exhaustive dataflow analysis algorithm associates with each point in a program a set of `dataflow facts' that are guaranteed to hold whenever that point is reached during program execution. By contrast, a demand dataflow analysis algorithm determines whether a single given dataflow fact holds at a single given point. This paper presents a new demand algorithm for interprocedural dataflow analysis. The new algorithm has three important properties: It provides precise (meet over all interprocedurally valid paths) solutions to a large class of problems; it has a polynomial worst-case cost for both a single demand and a sequence of all possible demands; the worst-case total cost of the sequence of all possible demands is no worse than the worst-case cost of a single run of the current best exhaustive algorithm.

Original language | English |
---|---|

Pages | 104-115 |

Number of pages | 12 |

DOIs | |

State | Published - 1995 |

Externally published | Yes |

Event | Proceedings of the 1995 3rd ACM SIGSOFT Symposium on the Foundations of Software Engineering - Washington, DC, USA Duration: 10 Oct 1995 → 13 Oct 1995 |

### Conference

Conference | Proceedings of the 1995 3rd ACM SIGSOFT Symposium on the Foundations of Software Engineering |
---|---|

City | Washington, DC, USA |

Period | 10/10/95 → 13/10/95 |