Patent US5161216A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5161216A Expired / Lapsed US ⏱️ 0.0 years remaining

Interprocedural slicing of computer programs using dependence graphs

Assignee: Wisconsin Alumni Research Foundation
•
Filing: 1989-03-08
•
Granted: 1992-11-03
•
Expires: 2009-03-08
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Programs having multiple procedures are analyzed by creating a system dependence graph which includes a program dependence graph representing the main program, procedure dependence graphs for each of the auxiliary procedures, and additional edges that represent direct dependencies between a call site and a called procedure and edges that represent transitive dependencies due to calls. These edges are constructed with the aid of an auxiliary structure that represents calling and parameter linkage relationships. This structure takes the form of an attribute grammar. The step of computing the required transitive-dependence edges is reduced to the construction of the subordinate characteristic graphs for the grammar's nonterminals. A slide of a program with respect to a program point p and a variable X consists of all statements of the program that might affect the value of X at point p. The system dependence graph is used in an algorithm to carry out interprocedural slicing, the generating of a slice of an entire program where the slice crosses the boundaries of procedure calls.

Inventors

  • 👤 Thomas Reps
  • 👤 Susan Horwitz
  • 👤 David Binkley

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-01 05:50
CPC Classifications
G; G06; G06F; G06F8/00; G06F8/70; G06F8/75

Claims Analysis

Total Claims: 2
Claim 1
Independent Claim 156 words
A method carried out by a digital computer for constructing a system dependence graph for a computer program system having multiple procedures, comprising the steps of: (a) for each procedure of the system, constructing its procedure dependence graph; (b) for each call site in the program, introducing a call edge from the call-site vertex to the corresponding procedure entry vertex; (c) for each preprocessing vertex v at a call site, introducing a linkage--entry edge from v to the corresponding initialization vertex in the called procedure; (d) for each post processing vertex v at a call site, introducing a linkage-exit edge to v from the corresponding finalization vertex in the called procedure; (e) constructing the linkage grammar corresponding to the system; (f) computing subordinate characteristics graphs of the linkage grammar's nonterminals; and (g) at all call sites that call a procedure P, introducing flow dependency edges corresponding to the edges in the subordinate characteristic graph for P.
Claim 2
Independent Claim 156 words
A method carried out by a digital computer for constructing a system dependence graph for a computer program system having multiple procedures, comprising the steps of: (a) for each procedure of the system, constructing its procedure dependence graph; (b) for each call site in the program, introducing a call edge from the call-site vertex to the corresponding procedure entry vertex; (c) for each preprocessing vertex v at a call site, introducing a linkage--entry edge from v to the corresponding initialization vertex in the called procedure; (d) for each post processing vertex v at a call site, introducing a linkage-exit edge to v from the corresponding finalization vertex in the called procedure; (e) constructing the linkage grammar corresponding to the system; (f) computing subordinate characteristics graphs of the linkage grammar's nonterminals; and (g) at all call sites that call a procedure P, introducing flow dependency edges corresponding to the edges in the subordinate characteristic graph for P.

References Cited (Backward Citations)

US3710348A Cited
US4502118A Cited
US4654780A Cited
US4734848A Cited
US4734854A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1995-11-03 1996-05-04 1996-11-03 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1999-11-03 2000-05-04 2000-11-03 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2003-11-03 2004-05-04 2004-11-03 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag