Consider the following code segment.
x = u - t; y = x * v; x = y + w; y = t - z;
The minimum number of total variables required to convert the above code segment to static single assignment form is
Explanation: Static Single Assignment (SSA) is used for intermediate code in compiler design. In Static Single Assignment form(SSA) each assignment to a variable should be specified with distinct names. We use subscripts to distinguish each definition of variables.
In the given code segment, there are two assignments of the variable x:
x = u - t; x = y + w;
And three assignments of the variable y:
y = x * v; y = t - z;
So we use two variables x1, x2 for specifying distinct assignments of x and y1, y2 each assignment of y. So, total number of variables is 9 (x1, x2, y1, y2, t, u, v, w, z).
Static Single Assignment form(SSA) of the given code segment is:
x1 = u - t; y1 = x1 * v; x2 = y1 + w; y2 = t - z; ;
Please refer below link for details
Quiz of this Question
Attention reader! Don’t stop learning now. Learn all GATE CS concepts with Free Live Classes on our youtube channel.