1
GATE CSE 2024 Set 1
MCQ (Single Correct Answer)
+2
-0.66

Consider the following pseudo-code.

L1: t1 = -1
L2: t2 = 0
L3: t3 = 0
L4: t4 = 4 * t3
L5: t5 = 4 * t2
L6: t6 = t5 * M
L7: t7 = t4 + t6
L8: t8 = a[t7]
L9: if t8 <= max goto L11
L10: t1 = t8
L11: t3 = t3 + 1
L12: if t3 < M goto L4
L13: t2 = t2 + 1
L14: if t2 < N goto L3
L15: max = t1

Which one of the following options CORRECTLY specifies the number of basic blocks and the number of instructions in the largest basic block, respectively ?

A

6 and 6

B

6 and 7

C

7 and 7

D

7 and 6

2
GATE CSE 2023
MCQ (Single Correct Answer)
+2
-0.67

Consider the control flow graph shown.

GATE CSE 2023 Compiler Design - Code Generation and Optimization Question 4 English

Which one of the following choices correctly lists the set of live variables at the exit point of each basic block?

A
B1: {}, B2: {a}, B3: {a}, B4: {a}
B
B1: {i, j}, B2: {a}, B3: {a}, B4: {i}
C
B1: {a, i, j}, B2: {a, i, j}, B3: {a, i}, B4: {a}
D
B1: {a, i, j}, B2: {a, j}, B3: {a, j}, B4: {a, i, j}
3
GATE CSE 2021 Set 2
MCQ (Single Correct Answer)
+2
-0.66

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 -> f2;

} 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 f1 and f2, and the local variables x, y, z, p, g, and i are allotted registers. Common sub-expression elimination (CSE) optimization is applied on the code. The number of addition and dereference operations (of the form y -> f1 or y -> f2 ) in the optimized code, respectively, are:  

A
203 and 2
B
403 and 102
C
303 and 102
D
303 and 2
4
GATE CSE 2021 Set 2
MCQ (Single Correct Answer)
+2
-0.66

For a statement S in a program, in the context of liveness analysis, the following sets are defined:

USE(S): the set of variables used in S

IN(S): the set of variables that are live at the entry of S

OUT(S): the set of variables that are live at the exit of S

Consider a basic block that consists of two statements, S1 followed by S2.

Which one of the following statements is correct?

A
OUT(S1) = USE(S1) ∪ IN(S2)
B
OUT(S1) = IN(S2)
C
OUT(S1) = IN(S1) ∪ USE(S1)
D
OUT(S1) = IN(S2) ∪ USE(S2)
GATE CSE Subjects
Software Engineering
Web Technologies
EXAM MAP