← Back to Patent Explorer
US5446899A Expired / Lapsed US ⏱️ 0.0 years remaining

Hint generation in smart recompilation

Assignee: Hewlett Packard Development Co LP
•
Filing: 1992-06-26
•
Granted: 1995-08-29
•
Expires: 2012-06-26
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and system for compiling a source program using smart recompilation. The invention allows fragments to contain "invocation specific" information, which is generated during a code generation phase of compilation. A hint generator attempts to preserve values of the invocation specific information between successive invocations of the compiler.

Inventors

  • 👤 Bevin R. Brett

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-31 16:44
CPC Classifications
G; G06; G06F; G06F8/00; G06F8/40; G06F8/41; G06F8/48

Claims Analysis

Total Claims: 19
Claim 1
Independent Claim 95 words
In a computer system including a memory, a method of compiling source programs, the method comprising the steps of: compiling a first program to produce a first compiled program and a first set of post-code generation information characterizing the first compiled program; compiling a second program to produce a second compiled program using the first set of postcode generation information to minimize differences between the first and second compiled program; determining differences between the first and second compiled programs; and compiling a third program dependent upon the differences between the first and second compiled programs.
Claim 2
Dependent Claim 95 words
In a computer system including a memory, a method of compiling source programs, the method comprising the steps of: compiling a first program to produce a first compiled program and a first set of post-code generation information characterizing the first compiled program; compiling a second program to produce a second compiled program using the first set of postcode generation information to minimize differences between the first and second compiled program; determining differences between the first and second compiled programs; and compiling a third program dependent upon the differences between the first and second compiled programs.
Claim 3
Dependent Claim 51 words
The method of claim 1, wherein the step of compiling the first program includes segmenting the first compiled program into a plurality of first parts; and wherein the first set of post-code generation information which characterizes the first compiled program includes post-code generation information which characterize the plurality of first parts.
Claim 4
Dependent Claim 32 words
The method of claim 1, wherein said first set of post-code generation information includes a hint corresponding to an offset from a beginning of a data area in the first compiled program.
Claim 5
Dependent Claim 29 words
The method of claim 1, wherein said first set of post-code generation information includes a hint corresponding to a size of a data area in the first compiled program.
Claim 6
Dependent Claim 24 words
The method of claim 2, wherein said first set of post-code generation information includes a hint identifying one of the plurality of first parts.
Claim 7
Dependent Claim 28 words
The method of claim 2, wherein said first set of post-code generation information includes a hint comprising an alphanumeric name identifying one of the plurality of first parts.
Claim 8
Dependent Claim 71 words
The method of claim 1, wherein the step of compiling the second program includes segmenting the second compiled program into a plurality of second parts; producing post-code generation information characterizing the plurality of second parts using the first set of post-code generation information; and wherein the determining step further includes comparing corresponding parts from the first and second plurality of parts to determine differences between the first and second compiled programs.
Claim 9
Dependent Claim 38 words
The method of claim 1, wherein the first and second compiled programs are first and second object files, respectively, and wherein the method further includes linking the first and second object files to produce the machine executable program.
Claim 10
Dependent Claim 56 words
The method of claim 1, wherein the first and second compiled programs each include program sections, each program section having a section name and a portion of allocated memory and wherein said post code-generation information includes a hint pertaining to a physical memory reference represented by a section address comprising a section name, and an offset.
Claim 11
Dependent Claim 31 words
The method of claim 1, wherein said post-code generation information includes a hint pertaining to a register and a corresponding register offset used as an address for a compiler temporary variable.
Claim 12
Dependent Claim 20 words
The method of claim 1, wherein said post-code generation information includes a hint pertaining to data and code alignment requirements.
Claim 13
Dependent Claim 25 words
The method of claim 1, wherein said post-code generation information includes a hint pertaining to registers used in passing parameters in an outbound procedure call.
Claim 14
Dependent Claim 20 words
The method of claim 1, wherein said post-code generation information includes a hint pertaining to size allocation of a variable.
Claim 15
Dependent Claim 22 words
The method of claim 1, wherein said post-code generation information includes a hint pertaining to code and data allocation of a module.
Claim 16
Dependent Claim 35 words
The method of claim 1, wherein said post-code generation information includes a hint pertaining a register and a corresponding register offset representing the address of a routine in the first and second compiled programs, respectively.
Claim 17
Dependent Claim 40 words
The method of claim 1 further comprising the step of storing the first set of post-code generation information in the memory, and replacing post-code generation information from the first set with corresponding post-code generation information produced from the second compilation.
Claim 18
Dependent Claim 146 words
In a computer system including a memory, a method of compiling a source program, the method comprising the steps of: compiling a first source file having a first contents to produce a first compiled program and a first set of post-code generation hints characterizing the first compiled program; modifying the first source file to have a second contents differing from the first contents; compiling the first source file having the second contents to produce a second compiled program using the first set of post-code generation hints to minimize differences between the first and second compiled programs; determining whether a portion of the second compiled program is different from a corresponding portion of the first compiled program; and compiling another source file, in response to the determining step, when a portion of the second compiled program is different from a corresponding portion of the first compiled program.
Claim 19
Dependent Claim 146 words
In a computer system including a memory, a method of compiling a source program, the method comprising the steps of: compiling a first source file having a first contents to produce a first compiled program and a first set of post-code generation hints characterizing the first compiled program; modifying the first source file to have a second contents differing from the first contents; compiling the first source file having the second contents to produce a second compiled program using the first set of post-code generation hints to minimize differences between the first and second compiled programs; determining whether a portion of the second compiled program is different from a corresponding portion of the first compiled program; and compiling another source file, in response to the determining step, when a portion of the second compiled program is different from a corresponding portion of the first compiled program.

References Cited (Backward Citations)

US4558413A Cited
US4667290A Cited
US5206951A Cited
US5230050A Cited
US5123098A Cited
US5187788A Cited
US5201050A Cited
US5204939A Cited
US5204960A Cited
US5247651A Cited
US5175856A Cited
US5193180A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1998-08-28 1999-02-27 1999-08-29 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2002-08-28 2003-02-27 2003-08-29 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2006-08-28 2007-02-27 2007-08-29 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag