Access the full text.
Sign up today, get DeepDyve free for 14 days.
Precise Executable Interprocedural DAVID BINKLEY Loyola College Slices The notion of a program slice, originally introduced by Mark Weiser, is useful in program debugging, automatic parallelization, program integration, and software maintenance. A slice of a program is taken with respect to a program point p and a variable x; the slice consists of all slice is statements of the program that might affect the value of x at point p. An interprocedural a slice of an entire program, where the slice crosses the boundaries of procedure calls. Weiser s original interprocedural-slicing algorithm produces imprecise slices that are executable programs. A recent algorithm developed by Horwitz, Reps, and Binkley produces more precise (smaller) slices by more accurately identifying those statements that might affect the values of x at point p. These slices, however, are not executable. An extension to their algorithm that produces more precise executable interprocedural slices is described together with a proof of correctness for the new algorithm. Languages]: Categories and Subject Descriptors: D.3.3 [Programming structures; procedures, functions, and subroutines; and Features control Languages]: General Processors compilers; optimization Language D.3.4 Constructs [Programming Terms: Algorithms, Design Control dependence, data dependence, program dependence Additional Key Words and Phrases: graph,
ACM Letters on Programming Languages and Systems (LOPLAS) – Association for Computing Machinery
Published: Mar 1, 1993
Read and print from thousands of top scholarly journals.
Already have an account? Log in
Bookmark this article. You can see your Bookmarks on your DeepDyve Library.
To save an article, log in first, or sign up for a DeepDyve account if you don’t already have one.
Copy and paste the desired citation format or use the link below to download a file formatted for EndNote
Access the full text.
Sign up today, get DeepDyve free for 14 days.
All DeepDyve websites use cookies to improve your online experience. They were placed on your computer when you launched this website. You can change your cookie settings through your browser.