We use cookies to ensure that we give you the best experience on our website. By continuing to browse this repository, you give consent for essential cookies to be used. You can read more about our Privacy and Cookie Policy.

Durham Research Online
You are in:

Some notes on interprocedural program slicing.

Gallagher, K. B. (2004) 'Some notes on interprocedural program slicing.', 4th IEEE International Workshop on Source Code Analysis and Manipulation : SCAM-4. Chicago, Illinois, 15-16 September 2004.


Weiser's algorithm for computing interprocedural slices has a serious drawback: it generates spurious criteria which are not feasible in the control flow of the program. When these extraneous criteria are used the slice becomes imprecise in that it has statements that are not relevant to the computation. Horwitz, Reps and Binkley solved this problem by devising the System Dependence Graph with an associated algorithm that produced more precise interprocedural slices. We take a ``step backward'' and show how to generate exactly the interprocedural slicing criteria needed, using the program's call graph or a stack. This technique can also be used on a family of program dependence graphs that represent all procedures in a program and are not interconnected by a system dependence graph. Then we show how to use the Horwitz, Reps and Binkley interprocedural slicing algorithm to generate criteria and show that the criteria so generated are equal to those generated by the call-graph/stack technique. Thus we present alternative, equivalent ways to generate precise slicing criteria across procedure boundaries. And finally we show that under certain circumstances, Weiser's technique for slicing across procedures is a bit ``too strong,'' for it always generates sufficient criteria to obtain the entire program as a slice on any criteria.

Item Type:Conference item (Paper)
Keywords:Algorithm, System dependence graph.
Full text:(VoR) Version of Record
Download PDF
Publisher Web site:
Publisher statement:©2004 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from the IEEE.
Record Created:27 May 2008
Last Modified:15 Jun 2011 16:55

Social bookmarking: del.icio.usConnoteaBibSonomyCiteULikeFacebookTwitterExport: EndNote, Zotero | BibTex
Look up in GoogleScholar | Find in a UK Library