Patent ID: 8839217

Claim:
A method for iteratively altering the composition of an inset in a forward dataflow pass, the method comprising: generating a control flow graph for a computer program, the control flow graph comprising a plurality of nodes and edges between the nodes; performing a data-flow analysis on the control flow graph by calculating an inset of each node in the control flow graph, wherein calculating the inset of a node comprises performing the following: if a predecessor node directly branches to the node, including an outset of the predecessor node in the inset of the node; if a predecessor node indirectly branches to the node via a label variable and the node is in definitions of the label variable in the outset of the predecessor node, including the outset of the predecessor node in the inset of the node; and if a predecessor node indirectly branches to the node via a label variable and the node is not in definitions of the label variable in the outset of the predecessor node, not including the outset of the predecessor node in the inset of the node.