Patent ID: 8694971

Claim:
A computer-implemented method for transforming a program to facilitate points-to analysis, the computer-implemented method comprising: accessing at least a portion of a program code; identifying at least one method m for extraction that contains one or more dynamic property writes x[v]=y in the program code, wherein the at least one method m identified for extraction satisfies two conditions: (i) a dynamic property write occurs in the at least one method m and is in a loop l with at least one loop variable i in a set of loop variables p i of the at least one method m; and (ii) v is data dependent on the at least one loop variable i; in response to these two conditions being satisfied, extracting a body of the loop l from the at least one method m, and creating a new method m p including the body of the loop l and with the at least one loop variable i as a parameter of the new method m p ; and substituting the body of the loop l in the program code of the at least one method m with a call to the new method m p to create a transformed program code to facilitate points-to analysis.