Patent ID: 7644396

Claim:
A computer-implemented method for replaying a computer program execution up to a target step of the execution other than the initial step of the execution, the method comprising: the computer precalculating a breakpoint array including an earliest predecessor step of the execution for each of a plurality of target steps, the earliest predecessor step being a step for which some breakpoint setting causes execution staffed at the earliest predecessor step to next break at a corresponding target step, and precalculating an earliest breakpoint setting that causes the execution staffed at the earliest predecessor step to cause the execution to next break at the target step; the computer calculating an optimal predecessor step of the target step, the predecessor step preceding the target step and from which the target step can be reached in a single break, wherein the program execution can be replayed to the predecessor step in a minimal number of breaks; resetting the program execution to an initial state; the computer replaying the program execution to the predecessor step; the computer unsetting any breakpoints that would cause the program execution to break before the target step; the computer setting a breakpoint that will cause the program execution to next break at the target step by setting the breakpoint to the earliest breakpoint setting of the target step; and the computer running the program execution to its next break, wherein the program execution stops at the target step.