1. A method, comprising: traversing a plurality of statements in a basic block of an application; determining whether a statement of the plurality of statements includes a memory reference; when the statement includes a memory references, inserting a translation statement before the statement; determining whether the statement includes a reference to variable including a pointer to a pointer; and when the statement includes a pointer to a pointer, converting the variable to a first new variable and a second new variable, wherein the second new variable is a pointer to the first new variable.