Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Consider this high-level code sequence of three statements. A=B+C B=A+C D=A-B Co

ID: 643359 • Letter: C

Question

Consider this high-level code sequence of three statements. A=B+C B=A+C D=A-B Copy propagation is a compiler code optimization technique where by all instances of a variable J that has been assigned K (i.e., J = K) are replaced with K. a. Use copy propagation to transform the three-statement sequence to the point that no operand is a computed value and write the resulting code. b. Note the instances in which the transformation has reduced the computational work of a statement and those where the work has increased. c. What does this suggest about the challenge faced in building optimizing compilers?

Explanation / Answer

a.A=B+C

t1=A

B=A+C

t2=B

D=A-B

C=A

A=B

var to set

a ->{}

b ->{t2}

b

c.With the more advanced architectures, the programming has become more difficult