Patent ID: 6249910
Filing Date: 2001-06-19
Classification: G06F

Abstract:
A method for transforming a non-SSA code segment into SSA form, said method comprising the steps of:representing the non-SSA code segment as a plurality of nodes, each node including one or more instructions, a first subset of the instructions including definition instructions that define an original variable name or a cloned variable name, a second subset of the instructions including use instructions that use an original variable name or a cloned variable name, the original variable name associated with at least one or more cloned variable names;providing a first set of nodes including the nodes having a definition instruction for the original variable name and a definition instruction for each cloned variable name;forming a second set of nodes including the nodes that are in iterative dominance frontiers of the nodes in the first set;inserting in each node in the second set, a single definition instruction that defines a cloned variable name that is assigned a phi-function;altering the original variable name, in each use instruction that uses the original variable name, to a variable name associated with a definition instruction that reaches the use instruction that uses the original variable name; andupdating each phi-function with cloned variable names having definition instructions that reach a particular phi-function.