Question
a.
A basic block is a sequence of instructions where control enters the sequence at the beginning and exits at the end
b.
Available expression analysis can be used for common subexpression elimination
c.
Live variable analysis can be used for dead code elimination
d.
x = 4 ∗ 5 => x = 20 is an example of common subexpression elimination
Posted under GATE cse question paper Compiler Design
Engage with the Community - Add Your Comment
Confused About the Answer? Ask for Details Here.
Know the Explanation? Add it Here.
Q. Which one of the following is FALSE?
Similar Questions
Discover Related MCQs
Q. One of the purposes of using intermediate code in compilers is to
View solution
Q. Consider the grammar rule E → E1 - E2 for arithmetic expressions. The code generated is targeted to a CPU having a single user register. The subtraction operation requires the first operand to be in the register. If E1 and E2 do not have any common sub expression, in order to get the shortest possible code
View solution
Q. Consider the intermediate code given below:
1. i = 1
2. j = 1
3. t1 = 5 * i
4. t2 = t1 + j
5. t3 = 4 * t2
6. t4 = t3
7. a[t4] = –1
8. j = j + 1
9. if j <= 5 goto(3)
10. i = i + 1
11. if i < 5 goto(2)
The number of nodes and edges in the control-flow-graph constructed for the above code, respectively, are
View solution
Q. Consider the following code segment.
x = u - t;
y = x * v;
x = y + w;
y = t - z;
y = x * y;
The minimum number of total variables required to convert the above code segment to static single assignment form is
View solution
Q. Which of the following derivations does a top-down parser use while parsing an input string?
The input is assumed to be scanned in left to right order.
View solution
Q. Which of the following statements is false ?
View solution
Q. Consider a program P that consists of two source modules M1 and M2 contained in two different files. If M1 contains a reference to a function defined in M2, the reference will be resolved at
View solution
Q. Consider the following statements:
(I) The output of a lexical analyzer is groups of characters.
(II) Total number of tokens in printf("i=%d, &i=%x", i, &i); are 11.
(III) Symbol table can be implementation by using array and hash table but not tree.
Which of the following statement(s) is/are correct?
View solution
Q. Which one of the following statements is FALSE ?
View solution
Q. A lexical analyzer uses the following patterns to recognize three tokens T1, T2, and T3 over the alphabet {a,b,c}.
T1: a?(b∣c)*a
T2: b?(a∣c)*b
T3: c?(b∣a)*c
Note that ‘x?’ means 0 or 1 occurrence of the symbol x. Note also that the analyzer outputs the token that matches the longest possible prefix. If the string bbaacabc is processes by the analyzer, which one of the following is the sequence of tokens it outputs?
View solution
Q. The output of a lexical analyzer is
View solution
Q. The number of tokens in the following C statement is printf("i=%d, &i=%x", i&i);
View solution
Q. Consider the following statement:
if (expression)
statement
else
statement
Which of the following describes the above statement?
View solution
Q. Removal of left recursion is necessary because?
View solution
Q. A parse tree showing attribute value at each node is called?
View solution
Q. The traversal method translation schema adapted to execute the action is
View solution
Q. The role of predictive parsing is
View solution
Q. Which of the following checks are included with static checking?
View solution
Q. If an error is detected within a statement, the type assigned to the statement is?
View solution
Q. If conversion from one type to another type is done automatically by the compiler then, it is called?
View solution
Suggested Topics
Are you eager to expand your knowledge beyond Compiler Design? We've curated a selection of related categories that you might find intriguing.
Click on the categories below to discover a wealth of MCQs and enrich your understanding of Computer Science. Happy exploring!