The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.

The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.

Date of Patent:
Sep. 17, 1996

Filed:

Jan. 25, 1994
Applicant:
Inventors:

Sun C Chan, Fremont, CA (US);

James C Dehnert, Palo Alto, CA (US);

Raymond W Lo, Sunnyvale, CA (US);

Ross A Towle, San Francisco, CA (US);

Assignee:

Silicon Graphics, Inc., Mountain View, CA (US);

Attorney:
Primary Examiner:
Int. Cl.
CPC ...
G06F / ;
U.S. Cl.
CPC ...
395375 ; 364D / ; 364D / ; 364280 ; 3642804 ; 3642805 ; 364973 ;
Abstract

A system and method of generating object code from an intermediate representation of source code is described. The intermediate representation includes a plurality of basic blocks each being represented by a plurality dam dependency graphs, wherein each data dependency graph comprises a plurality of nodes each corresponding to an instruction from the target computer instruction set. The present invention operates by selecting a source basic block (that is one of the basic blocks of the intermediate representation) and a target basic block (that is another of the basic blocks of the intermediate representation), and by identifying a maximal set of instructions contained in the source basic block that are movable from the source basic block to the target basic block without violating any data dependency relationships of the data dependency graphs. An overall cost model of aggregately moving instructions of the maximal set from the source basic block to the target basic block is generated. This cost model specifies an executable cost of moving each of the instructions of the maximal set from the source basic block to the target basic block. Then, the present invention aggregately moves one or more instructions of the maximal set from the source basic block to the target basic block according to the cost model to form the object code.


Find Patent Forward Citations

Loading…