Abstract

Program slicing is an effective and established technique to analyze sequential programs. However, owing to intransitive dependences between statements, it is hard to get precise slices of concurrent programs with traditional slicing algorithms for sequential programs. This paper proposes a novel representation, thread interaction reachability graph (TIRG), for concurrent programs with shared memory, interleaving semantics and mutual exclusion. Based on TIRG, dependences can be analyzed globally and we construct a new dependence graph (MSDG), where each node is a 2-tuple composed of program state and statement. The research shows that dependences in MSDG are transitive and more precise slice can be obtained by traversing MSDG compared with previous approaches.

Full Text
Published version (Free)

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