next up previous
Nächste Seite: Ergänzungen, Zusammenfassung Aufwärts: Seminar: Codegenerierung Vorherige Seite: Transformationen

Register

Seminar: Registervergabe

$ $Id: register.tex,v 1.2 2004/01/27 14:44:34 joe Exp $ $

http://www.imn.htwk-leipzig.de/~waldmann/ws03/compilerbau/programme/code/register.c

Datenfluß-Analyse für:

int fun (int a, int b) {
int c ;
int d ;
d = b + a ;
d = a + d ;
b = b + b ;
b = d + a ;
c = a - d ;
b = a - b ;
b = d + b ;
d = d + b ;
b = b - a ;
a = d + b ;
c = c + b ;
c = c + a ;
b = c - d ;
b = c - b ;
b = b + a ;
return b ;
}

Register-Inferenz-Graph bestimmen und färben.


(Hinweis: Programmtext gewürfelt mit diesem Haskell-Skript: http://www.imn.htwk-leipzig.de/~waldmann/ws03/compilerbau/programme/code/Gen.hs. So:

$ hugs +tT Gen.hs
Main> make 4 15 >>= putStr

mit größeren Parametern würfeln, gleiche Aufgabe nochmal.



Johannes Waldmann 2004-01-28