Better Slicing of Programs with Jumps and Switches
Sumit Kumar and Susan Horwitz
Program slicing is an important operation that can be used as the
basis for programming tools that help programmers understand, debug,
maintain, and test their code.
This paper extends previous work on program slicing
by providing a new definition of ``correct'' slices,
by introducing a representation for C-style switch statements,
and by defining a new way to
compute control dependences and to slice a program-dependence
graph so as to compute more precise slices of programs that include
jumps and switches.
Experimental results show that the new approach to slicing
can sometimes lead to a significant improvement in slice
precision.
University of Wisconsin