Abstract
The notion of a program slice, originally introduced by Mark Weiser, is a fundamental operation for addressing many software-engineering problems, including program understanding, debugging, maintenance, testing, and merging. A slice determines either all program elements that might affect a given element (“backward slicing”) or all elements that could be affected by a given element (“forward slicing”). Jackson and Rollins introduced a related operation, called program chopping, which is a kind of “filtered” slice: Chopping answers questions of the form “What are all the program elements v that serve to transmit effects from a given source element s to a given target element t?” However, Jackson and Rollins define only a limited form of chopping: Among other restrictions, they impose the restriction that s and t be in the same procedure. This paper solves the unrestricted interprocedural chopping problem, as well as a variety of other useful variants of interprocedural chopping.
Cite
CITATION STYLE
Reps, T., & Rosay, G. (1995). Precise interprocedural chopping. ACM SIGSOFT Software Engineering Notes, 20(4), 41–52. https://doi.org/10.1145/222132.222138
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.