Claims Analysis
Total Claims: 14
Claim 1
Independent Claim
99 words
A method for processing a first version of a computer program expressed in terms of a first instruction set, at least ones of the instructions of said first instruction set having primary and secondary effects, said method comprising the steps of: expanding each of at least ones of the instructions of said first version into a plurality of instructions which explicitly replicate the primary and secondary effects of said each instruction of said first version, and processing the resulting expanded version to eliminate individual ones of the instructions thereof whose elimination does not affect the functionality of said program.
Claim 2
Independent Claim
99 words
A method for processing a first version of a computer program expressed in terms of a first instruction set, at least ones of the instructions of said first instruction set having primary and secondary effects, said method comprising the steps of: expanding each of at least ones of the instructions of said first version into a plurality of instructions which explicitly replicate the primary and secondary effects of said each instruction of said first version, and processing the resulting expanded version to eliminate individual ones of the instructions thereof whose elimination does not affect the functionality of said program.
Claim 3
Dependent Claim
32 words
The method of claim 1 wherein said secondary effects include the calculation of secondary information and wherein said eliminated instructions include instructions which calculate secondary information which is unused by said program.
Claim 4
Dependent Claim
26 words
The method of claim 1 wherein said processing step includes the step of performing data flow analysis over said expanded version to identify said individual instructions.
Claim 5
Dependent Claim
22 words
The method of claim 3 wherein said data flow analysis step includes the step of performing definition-use chaining over said expanded version.
Claim 6
Dependent Claim
18 words
The method of claim 3 wherein said data flow analysis step is performed over said expanded version globally.
Claim 7
Dependent Claim
37 words
The method of claim 3 wherein said processing step includes the step of identifying procedures within said expanded version and wherein said data flow analysis step is performed globally over said expanded version on a procedure-by-procedure basis.
Claim 8
Dependent Claim
36 words
The method of claim 6 wherein the data flow analysis includes the step of finding among the definitions of variables which occur in a procedure those definitions which are used in at least one other procedure.
Claim 9
Dependent Claim
45 words
The method of claim 6 wherein at least ones of said procedures include definitions of values of variables, which values have uses in at least one other procedure, and wherein said data flow analysis step includes the step of associating such definitions with such uses.
Claim 10
Dependent Claim
23 words
The method of claim 8 wherein said associating step is carried out by using at least first and second data flow analysis steps.
Claim 11
Dependent Claim
102 words
The method of claim 8 wherein said processing step further includes the step of creating a call tree identifying the calling relationships among said procedures, and wherein said associating step includes the sequential steps of processing said procedures in forward call tree order to create a list of those variables used in a procedure that a) are at least potentially defined by a procedure called thereby and b) are used, after the call, in the calling procedure, and processing said procedures in reverse call tree order to exclude from said list those variables which are not actually defined by the called procedure.
Claim 12
Dependent Claim
44 words
The method of claim 1 wherein said processing step includes the use of at least a first pattern recognition technique to identify groups of instructions in said expanded version which can be replaced by an equivalent smaller group of instructions in said second version.
Claim 13
Dependent Claim
41 words
The method of claim 1 wherein said processing step includes the use of at least a first pattern recognition technique to identify a sequence of instructions that can be replaced by an equivalent reordered sequence of instructions in said second version.
Claim 14
Dependent Claim
31 words
The method of claim 1 wherein said expanded version is expressed in terms of an intermediate computer language which is different from the language in which said first version is expressed.