The following code segment is executed on a processor which allows only…
GATE · 2013 · CS · Computer Science & ITBARC · Computer Science · 2013
The following code segment is executed on a processor which allows only register operands in its instructions. Each instruction can have at most two source operands and one destination operand. Assume that all variables are dead after this code segment.
c = a + b;
d = c * a;
e = c + a;
x = c * c;
if (x > a) {
y = a * a;
} else {
d = d * d;
e = e * e;
}What is the minimum number of registers needed in the instruction set architecture of the processor to compile this code segment without any spill to memory? Do not apply any optimization other than optimizing register allocation.
- A.
3
- B.
4
- C.
5
- D.
6
Attempted by 176 students.
Show answer
Correct answer: B
Explore the full course: Iocl Engineers Officers Grade A Paper 2
Loading lesson…