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
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 |