Consider the following ANSI C code segment: z=x + 3 + y->f1 + y->f2; for (i =…
GATE · 2021 · CS · Set 2 · Computer Science & IT
Consider the following ANSI C code segment:
z=x + 3 + y->f1 + y->f2;
for (i = 0; i < 200; i = i + 2) {
if (z > i){
p = p + x + 3;
q = q + y->f1;
} else {
p = p + y->f2;
q = q + x + 3;
}
}
Assume that the variable y points to a struct (allocated on the heap) containing two fields and , and the local variables x, y, z, p, q, and i are allotted registers. Common sub-expression elimination (CSE) optimization is applied on the code. The number of addition and the dereference operations (of the form y -> or y ->) in the optimized code, respectively, are:
- A.
403 and 102
- B.
203 and 2
- C.
303 and 102
- D.
303 and 2
Attempted by 94 students.
Sign up free to check your answer
Sign up freeLoading lesson…