Claims Analysis
Total Claims: 21
Claim 1
Independent Claim
112 words
A method for producing optimized object code for a high level computer language pro ram comprising the steps of: (a) compiling source code for the high level computer language program to produce first object code; (b) generating profile information about the first object code, including the following steps (b.1) dynamically translating the first object code to produce second object code, the second object code including profiling code which, when executed, produces the profile information, (b.2) executing the second object code, including producing the profile information; and, (c) recompiling the source code to produce the optimized object code, the recompiling including using the profile information in the production of the optimized object code.
Claim 2
Independent Claim
112 words
A method for producing optimized object code for a high level computer language pro ram comprising the steps of: (a) compiling source code for the high level computer language program to produce first object code; (b) generating profile information about the first object code, including the following steps (b.1) dynamically translating the first object code to produce second object code, the second object code including profiling code which, when executed, produces the profile information, (b.2) executing the second object code, including producing the profile information; and, (c) recompiling the source code to produce the optimized object code, the recompiling including using the profile information in the production of the optimized object code.
Claim 3
Dependent Claim
23 words
A method as in claim 1 additionally including the following step performed after step (a): (d) testing and validating the first object code.
Claim 4
Dependent Claim
91 words
A method as in claim 1 additionally including the following steps performed after step (c): (d) generating profile information about the optimized object code, including the following steps (d.1) dynamically translating the optimized object code to produce third object code, the third object code including profiling code which, when executed, will produce additional profile information, (d.2) executing the third object code; and, (e) recompiling the source code to produce the further optimized object code, the recompiling including using the additional profile information in the production of the further optimized object code.
Claim 5
Dependent Claim
17 words
A method as in claim 1 wherein step (a) includes placing annotations into the first object code.
Claim 6
Dependent Claim
28 words
A method as in claim 4 wherein in step (b.1) the annotations within the first object code determine content of the profiling code within the second object code.
Claim 7
Dependent Claim
27 words
A method as in claim 5 wherein in step (a) the annotations are placed into the first object code by a compiler which compiles the source code.
Claim 8
Dependent Claim
22 words
A method as in claim 5 wherein in step (a) the annotations are placed into the first object code by a user.
Claim 9
Dependent Claim
91 words
A method as in claim 5 additionally including the following steps performed after step (c): (d) generating profile information about the optimized object code, including the following steps (d.1) dynamically translating the optimized object code to produce third object code, the third object code including profiling code which, when executed, will produce additional profile information, (d.2) executing the third object code; and, (e) recompiling the source code to produce the further optimized object code, the recompiling including using the additional profile information in the production of the further optimized object code.
Claim 10
Dependent Claim
22 words
A method as in claim 1 wherein the first object code and the second object code utilize a same machine instruction set.
Claim 11
Dependent Claim
55 words
A computing system comprising: a translator which translates first object code of a high-level language program to second object code, the translator including means for adding profiling code to the second object code, the profiling code, when executed, producing profile information; and, executing means for executing the second object code and producing the profile information.
Claim 12
Dependent Claim
55 words
A computing system comprising: a translator which translates first object code of a high-level language program to second object code, the translator including means for adding profiling code to the second object code, the profiling code, when executed, producing profile information; and, executing means for executing the second object code and producing the profile information.
Claim 13
Dependent Claim
21 words
A computing system as in claim 10 additionally comprising: testing and validating means for testing and validating the first object code.
Claim 14
Dependent Claim
21 words
A computing system as in claim 10 additionally comprising: a compiler which compiles source code to generate the first object code.
Claim 15
Dependent Claim
37 words
A computing system as in claim 12 wherein the compiler includes: recompile means for compiling the source code while utilizing the profile information produced by execution of the profiling code, the recompile means producing optimized object code.
Claim 16
Dependent Claim
17 words
A computing system as in claim 12 wherein the compiler places annotations into the first object code.
Claim 17
Dependent Claim
30 words
A computing system as in claim 14 wherein the translator utilizes the annotations within the first object code to determine content of the profiling code within the second object code.
Claim 18
Dependent Claim
50 words
A computing system as in claim 12 wherein the computer system includes means for a user to add and changes annotations into the first object code and wherein the translator utilizes the annotations within the first object code to determine content of the profiling code within the second object code.
Claim 19
Dependent Claim
33 words
A computing system as in claim 10 wherein the computing system additionally includes a translated code cache, the translated code cache for storing modules which contain a subset of the second object code.
Claim 20
Dependent Claim
24 words
A computing system as in claim 17 wherein the computing system additionally includes: an address to block information map; and, a block information table.
Claim 21
Dependent Claim
23 words
A computing system as in claim 10 wherein the first object code and the second object code utilize a same machine instruction set.