loading...
Graph-Less Dynamic Dependence-Based Dynamic Slicing Algorithms
Philadelphia, Pennsylvania September 27-September 29
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/SCAM.2006.17Sixth IEEE International Workshop on ...
 This Article 
 
PDF
HTML
 
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Arpad Beszedes, University of Szeged, Hungary
Tamas Gergely, University of Szeged, Hungary
Tibor Gyimothy, University of Szeged, Hungary
Using Dynamic Dependence Graphs is a well understood method for computing dynamic program slices. However, in its basic form, the DDG is inappropriate for practical implementation, so several alternative approaches have been proposed by researchers. In this paper, we elaborate on different methods in which the execution trace is processed and, using local definition-use information, the dependence chains are followed "on the fly" to construct the slices without actually building any graphs. Naturally, various additional data structures still need to be maintained, but these vary on the slicing scenario. Firstly, one may want to perform the slicing in a demand-driven fashion, or to compute many slices globally. Next, one may be interested either in backward or forward slices. And finally, the slices can be produced by traversing the trace either in a forward or in a backward direction. This totals eight possibilities, of which some give useful algorithms, while there are irrelevant combinations as well. In this work we investigate all of them, give the basic algorithms where appropriate and discuss on implementation experiences and perspectives.
Index Terms:
Program slicing, dynamic slicing algorithms, execution trace, program dependences.
Citation:
Arpad Beszedes, Tamas Gergely, Tibor Gyimothy, "Graph-Less Dynamic Dependence-Based Dynamic Slicing Algorithms," scam, pp.21-30, Sixth IEEE International Workshop on Source Code Analysis and Manipulation (SCAM'06), 2006
Usage of this product signifies your acceptance of the Terms of Use.