[Soot-list] How does Jimple preserve semantics with its partial SSA without Phi-node mechanism?? (with an example illustrating my idea)
Quentin Sabah
quentin.sabah at inria.fr
Thu Jul 12 06:40:02 EDT 2012
> Jimple is not SSA, but I think it is somewhat SSA because local variables have unique name whenver possible. Right?
Mmh, Single Static Assignment means a variable is assigned only once in a method body, thus Phi-nodes are required when a variable may take different values depending on the control-flow.
In Jimple it is perfectly allowed to re-assign a variable. However it generates a lot of temporary variables (the one starting with a $ sign), these variables usually represent values located on the stack in the JVM (operands and results of instructions). Reusing variable names is an optimization for the bytecode generation.
--
Quentin Sabah, CIFRE Ph.D. student
Grenoble University
INRIA-SARDES | STMicroelectronics/AST
Montbonnot, France | Grenoble, France
mailto:quentin.sabah at inria.fr | mailto:quentin.sabah at st.com
phone: +33 476 61 52 42 | phone: +33 476 58 44 14
More information about the Soot-list
mailing list