Patent ID: 9104402
Filing Date: 2015-08-11
Classification: G06F

Abstract:
1. A computer-implemented method, comprising: generating a plurality of possible branch traces for a computer program, each possible branch trace representing different sequences of branch instructions that may be executed while the computer program is running, each branch instruction having a corresponding identifier; determining an address of a function of the computer program; generating an object dump including instructions for the function; determining an address offset for each branch instruction from the object dump; generating a branch trace value for at least one of the plurality of possible branch traces, wherein generating the branch trace value includes performing a mathematical or logical operation between a first identifier of a first branch instruction and each subsequent identifier of branches taken within the possible branch trace to obtain the branch trace value; receiving or reading a run-time branch trace value generated while the computer program is executed; and generating an output including a branch trace, wherein the output branch trace is selected based upon a match between the run-time branch trace value and the at least one generated branch trace value.