 |
 |
|
|
|
|
Title: |
US5133072:
Method for improved code generation in reduced instruction set computers
[ Derwent Title ]
>> View Certificate of Correction for this publication

|
Country: |
US United States of America

|
| |
Inventor: |
Buzbee, William B.; Milpitas, CA

|
Assignee: |
Hewlett-Packard Company, Palo Alto, CA
other patents from HEWLETT-PACKARD COMPANY (250060) (approx. 10,220)
News, Profiles, Stocks and More about this company

|
Published / Filed: |
1992-07-21
/ 1986-11-13

|
Application Number: |
US1986000930582

|
IPC Code: |
Advanced:
G06F 9/45;
Core:
more...
IPC-7:
G06F 9/45;

|
U.S. Class: |
Current:
717/152;
Original:
395/700;
364/DIG.1;
364/280;
364/280.4;
364/280.5;

|
Field of Search: |
364/200 MS File,300 MS File,900 MS File

|
Priority Number: |
| 1986-11-13 |
US1986000930582 |

|
Abstract: |
A method for efficient generation of complied code is presented. In order to gain significant performance advantage with a minimum of code expansion, out-of-line code sequences are used. An out-of-line code sequence is a series of instructions that are invoked by a simplified calling mechanism in which almost no state-saving is required. Additionally, out-of-line code sequences is designed so that a single copy can exist on a system and all processes running on that system can access it. A series of out-of-line code sequences can be generated, each member of the series being tailored to a particular combination of compile-time information.

|
Attorney, Agent or Firm: |
Griffin, Roland I. ;
Haggard, Alan H. ;

|
Primary / Asst. Examiners: |
Shaw, Gareth D.; Kulik, Paul

|
Maintenance Status: |
CC Certificate of Correction issued View Certificate of Correction

|
INPADOC Legal Status: |
Show legal status actions
Family Legal Status Report

|
Designated Country: |
DE FR GB

|
Family: |
Show 8 known family members

|
First Claim:
Show all 2 claims |
I claim:
1. A method, for use by a compiler program running on a computer, for efficient generation of compiled code, the method comprising the steps of:
- (c) creating out-of-line code sequences, a first portion of the out-of-line code sequences being general purpose out-of-line code sequences which completely perform operations and a second portion of the out-of-line code sequences being specific purpose out-of-line code sequences each of which implements a segment of an operation, each of the implemented segments used in the generation of code for more than one operation;
- (b) determining by the compiler program whether at compile time there is available to the compiler program information about a first operation which may be used to at least partially perform the first operation;
- (c) if information about the first operation which may be used to at least partially perform the first operation is not available to the compiler program,
- determining by the compiler program whether code for the first operation can be generated using less than a predetermined number of instructions, and
- generating code by the compiler program which when executed by a computer will perform the first operation in line if code for the first operation can be generated using less than the predetermined number of instructions, otherwise generating code which calls a general purpose out-of-line code sequence which when executed will perform the first operation; and
- (d) if information about the first operation which may be used to at least partially perform the first operation is available to the compiler program and the compiler program determines the first operation can be fully described by information available to the compiler program at compile time, generating code by the compiler program which when executed will perform the first operation so that for every segment of the first operation which the compiler program determines is implemented by one of the specific purpose out-of-line code sequences a specific purpose out-of-line code sequence which implements the segment of the first operation is called and so that for every segment of the first operation which the compiler program determines is not implemented by one of the specific purpose out-of-line code sequences, code which implements the segment is placed in-line.

|
Background / Summary: |
Show background / summary

|
Drawing Descriptions: |
Show drawing descriptions

|
Description: |
Show description

|
Forward References: |
Show 30 U.S. patent(s) that reference this one

|
 |
 |
|
|
|
|
Foreign References: |
None

|
Other Abstract Info: |
DERABS G88-134639
JAPABS 120390P000081

|
Other References: |
"The Program Development Process," Joel D. Aron, 1974 by Addison-Wesley Publishing Co., Inc.-section 5.4.1.
"Compiler Design Theory," P. M. Lewis II et al., 1976 by Addison-Wesley Publishing Co., Inc.-section 15.5.
Torsun and Al-Jarrah Dynamic Analysis of COBOL Programs, Software-Practice and Experience, vol. 11, 949-961 (1981) pp. 949-961.
Robert Bernhard, More hardware means less software, IEEE Spectrum Dec., 1981, pp. 30-36.
(8 pages)
Cited by 2 patents
Rule, Wilfred P., "Fortran: A Practical Approach with Style and Structure", Prindle, Weber & Schmidt, Boston, Mass., 1980, pp. 335-362.
Predicting Potential COBOL Performance on Low Level Machine Architectures by Jerome A. Otto, Sigplan Notices, V20, #10, Oct. 1985.

|


|
Nominate this for the Gallery...

|
|