Abstract: The present invention provides a system and method for optimizing or parallelizing computer code typically represented by a source program. The source program is represented by a control flow graph. The present invention includes an optimizer for constructing a compact data flow representation from the control flow graph and a mechanism for evaluating the compact data flow representation in relation to a data flow framework in order to determine a solution to a particular data flow problem. The present invention represents data flow chains compactly, obtaining some of the advantages of Static Single Assignment (SSA) form without modification of program text (i.e., renaming). In addition, the present invention represents compactly certain data flow chains which SSA form fails to represent (i.e. def-def, use-def, and use-use chains).
Type:
Grant
Filed:
March 17, 1992
Date of Patent:
September 5, 1995
Assignee:
International Business Machines Corporation
Inventors:
Michael G. Burke, Jong-Deok Choi, Ronald G. Cytron