Abstract

Program slicing can be used to aid in a variety of software maintenance activities including code understanding, code testing, debugging, and program reengineering. Program slicing (as well as other program analysis functions including forward slicing) can be efficiently performed on an internal program representation called a system dependence graph (SDG). The construction of the SDG depends primarily on the calculation of the transitive dependences which in turn depends in the calculation of the data dependences. In this paper we demonstrate the correctness and the optimality (with respect to the number of iterations required) of our method of calculating the transitive data dependences. We make a worst-case analysis of our algorithm, and find that is faster than the Horwitz, Reps, and Binkley (HRB) algorithm, and comparable to the Reps, Horwitz, Sagiv, and Rosay (RHSR) algorithm. Furthermore, our method requires neither the (explicit) calculation of the GMOD and GREF sets nor the construction of a linkage grammar and the corresponding subordinate characteristic graphs of the linkage grammar’s non-terminals. Unlike both the HRB and RHSR algorithms, our algorithm treats recursive procedures separately, permitting a faster (linear time) solution of non-recursive procedures. Additionally, a beneficial side effect of this method is that it provides us with a new method for performing interprocedural, flow-sensitive data flow analysis.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.