Speeding up Slicing

12 years 3 months ago
Speeding up Slicing
Program slicing is a fundamental operation for many software engineering tools. Currently, the most efficient algorithm for interprocedural slicing is one that uses a program representation called the system dependence graph. This paper defines a new algorithm for slicing with system dependence graphs that is asymptotically faster than the previous one. A preliminary experimental study indicates that the new algorithm is also significantly faster in practice, providing roughly a 6-fold speedup on examples of 348 to 757 lines. CR Categories and Subject Descriptors: D.2.2 [Software Engineering]: Tools and Techniques - programmer workbench; D.2.6 [Software Engineering]: Programming Environments; D.2.7 [Software Engineering]: Distribution and Maintenance - enhancement, restructuring; E.1 [Data Structures] graphs General Terms: Algorithms, Performance Additional Key Words and Phrases: dynamic programming, dynamic transitive closure, flow-sensitive summary information, program debugging, pr...
Thomas W. Reps, Susan Horwitz, Shmuel Sagiv, Genev
Added 10 Aug 2010
Updated 10 Aug 2010
Type Conference
Year 1994
Authors Thomas W. Reps, Susan Horwitz, Shmuel Sagiv, Genevieve Rosay
Comments (0)