Patent US2846336A successfully refreshed from Google Patents.
Patent US5535392A successfully refreshed from Google Patents.
US5535392A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Using hint generation to cause portions of object files to remain the same
Assignee: Hewlett Packard Development Co LP
•
Filing: 1995-03-10
•
Granted: 1996-07-09
•
Expires: 2015-03-10
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-11-05 08:27
CPC Classifications
G; G06; G06F; G06F8/00; G06F8/40; G06F8/41; G06F8/48
Claims Analysis
Total Claims: 16
Claim 1
Independent Claim
162 words
A method executed in a computer system with a memory, the method comprising the steps of: translating a first program to produce a first translation result and first nondeterministic invocation specific information which characterizes the first translation result; placing the first translation result into the memory; translating a second program to produce a second translation result by directly using the first nondeterministic invocation specific information which characterizes the first translation result in order to minimize differences between said first translation result and said second translation result, said step of translating said second program including the steps of: reading a code generation hint describing a portion of said first translation result with said code generation hint being included in said first nondeterministic information, and using said code generation hint to produce a portion of said second translation result for those portions of said second translation result having corresponding portions in said first translation result; and placing said second translation result into the memory.
Claim 2
Independent Claim
162 words
A method executed in a computer system with a memory, the method comprising the steps of: translating a first program to produce a first translation result and first nondeterministic invocation specific information which characterizes the first translation result; placing the first translation result into the memory; translating a second program to produce a second translation result by directly using the first nondeterministic invocation specific information which characterizes the first translation result in order to minimize differences between said first translation result and said second translation result, said step of translating said second program including the steps of: reading a code generation hint describing a portion of said first translation result with said code generation hint being included in said first nondeterministic information, and using said code generation hint to produce a portion of said second translation result for those portions of said second translation result having corresponding portions in said first translation result; and placing said second translation result into the memory.
Claim 3
Dependent Claim
37 words
The method of claim 1, wherein the first nondeterministic invocation specific information which characterizes the first translation result includes a value corresponding to an offset from a beginning of a data area in said first translation result.
Claim 4
Dependent Claim
34 words
The method of claim 1, wherein the first nondeterministic invocation specific information which characterizes the first translation result includes a value corresponding to a size of a data area in said first translation result.
Claim 5
Dependent Claim
29 words
The method of claim 1, wherein the first nondeterministic invocation specific information which characterizes the first translation result includes an indicator of a location in the first translation result.
Claim 6
Dependent Claim
22 words
The method of claim 1, wherein the first nondeterministic invocation specific information which characterizes the first translation result includes an alphanumeric name.
Claim 7
Dependent Claim
41 words
The method of claim 1, wherein said step of translating said second program includes producing second nondeterministic invocation specific information which characterizes said second translation result for use in minimizing differences between said second translation result and a third translation result.
Claim 8
Dependent Claim
40 words
The method of claim 6 further comprising the step of storing the first nondeterministic invocation specific information which characterizes said first translation result and storing the second nondeterministic invocation specific information which characterizes said second translation result to the memory.
Claim 9
Dependent Claim
36 words
The method of claim 7 further comprising the step of replacing the first nondeterministic invocation specific information which characterizes the first translation result with the second nondeterministic invocation specific information which characterizes the second translation result.
Claim 10
Dependent Claim
152 words
The method of claim 7, wherein the step of translating said first program includes the steps of: segmenting the first program into a plurality of first parts; generating nondeterministic invocation specific information which characterizes each of the plurality of first parts of said first program, the first nondeterministic invocation specific information which characterizes the first translation result comprising said nondeterministic invocation specific information characterizing each of the plurality of first parts; and wherein the step of translating said second program includes the steps of: segmenting the second program into a plurality of second parts; and generating other nondeterministic invocation specific information which characterizes each of the plurality of second parts of said second program using said first nondeterministic invocation specific information from said first translation, the second nondeterministic invocation specific information which characterizes the second translation result comprising the other nondeterministic invocation specific information characterizing each of the plurality of second parts.
Claim 11
Dependent Claim
51 words
The method of claim 9 further comprising the steps of: sorting the plurality of parts of said first program; sorting the plurality of parts of said second program; and using the sorting results in determining which part of said first program, if any, has a corresponding part in said second program.
Claim 12
Dependent Claim
62 words
The method of claim 10 further comprising the steps of: for parts of said first program which have a corresponding part in said second program, determining if the corresponding parts are equivalent; and replacing the nondeterministic invocation specific information of the corresponding part of said first program with the other nondeterministic invocation specific information of the corresponding part of said second program.
Claim 13
Dependent Claim
19 words
The method of claim 1 wherein a compiler translates said first program, and a compiler translates said second program.
Claim 14
Dependent Claim
20 words
The method in claim 1 further comprising the step of replacing said first translation result with said second translation result.
Claim 15
Dependent Claim
25 words
The method of claim 1, wherein said first translation result is a first object file and said second translation result is a second object file.
Claim 16
Dependent Claim
55 words
The method of claim 1 wherein said first program has corresponding semantic information which remains unchanged unless source code comprising said first program is modified, and wherein said first nondeterministic invocation specific information may change in a subsequent step of translating said first program even if said source code comprising said first program is unmodified.
References Cited (Backward Citations)
US4558413A
Cited
US5206951A
Cited
US5123098A
Cited
US5187788A
Cited
US5201050A
Cited
US5204960A
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) | 1999-07-09 | 2000-01-08 | 2000-07-09 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2003-07-09 | 2004-01-08 | 2004-07-09 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2007-07-09 | 2008-01-08 | 2008-07-09 | $7700.00 | Window Closed / Lapsed |