common subexpression elimination and copy propagation in titanium

Post on 19-Jan-2016

27 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Common Subexpression Elimination and Copy Propagation in Titanium. Johnathon Jamison David Marin CS265 S. Graham. Global Copy Propagation. Given a = b; … x = a + 1; We want to replace a with b on the last line, but we need to know that a and b are unchanged - PowerPoint PPT Presentation

TRANSCRIPT

Common Subexpression Elimination and Copy

Propagation in TitaniumJohnathon Jamison

David Marin

CS265

S. Graham

Global Copy Propagation

• Given

a = b;

x = a + 1;

• We want to replace a with b on the last line, but we need to know that a and b are unchanged

• Def/use analysis isn’t quite enough (why?)

Inserting Fake Defs and Uses

• Add fake defs and uses so that def/use analysis gives us the info we need

b = b;

a = b;

newtemp = b;

x = a + 1;• We can use this technique to enable CSE too.

Interaction with Copy Propagation

• Any temps introduced are placed after the calculation, so that copy propagation can remove thema = f * i a = f * i

temp_1 = a… …b = f * i b = temp_1

temp_2 = b… …c = f * i c = temp_2

Local CSE

• Used Muchnick’s algorithm (described in class)

• Used defs to find what was killed

• Fully implemented– Except method calls

• Since we are using defs already, why not so something more substantial?

top related