25.10.2012 Aufrufe

Generierung lokaler Optimierungen - IPD Snelting

Generierung lokaler Optimierungen - IPD Snelting

Generierung lokaler Optimierungen - IPD Snelting

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

4 Implementierung<br />

Die in Kapitel 3 erwähnten Arbeiten betrachten alle Ausdrücke in Form von Codesequenzen<br />

auf Assembler-Ebene. Dem entgegen ist das in dieser Arbeit vorgestellte Verfahren,<br />

im Folgenden als Optgen bezeichnet, auf eine maschinenunabhängige Zwischendarstellung<br />

ausgerichtet, weswegen in Anlehnung an Firm, Ausdrücke als Muster in Graphform<br />

betrachtet werden.<br />

Dieses Kapitel teilt sich in zwei Themenbereiche. Der erste Teil befasst sich mit dem<br />

allgemeinen Aufbau und Ablauf des Verfahrens, während sich der zweite Teil speziell<br />

mit der Thematik von Konstanten befasst.<br />

Zunächst noch einige Bemerkungen, die sich auf die in diesem Kapitel angeführten Beispiele<br />

beziehen:<br />

Bemerkung 1 (Reihenfolge der Operanden einer Operation). Bei den in den Abbildungen<br />

dargestellten Mustern wird auf eine explizite Auszeichnung des Kanten-Index<br />

(pos-Abbildung), also der Angabe, ob es sich um den ersten oder zweiten Operanden<br />

handelt, der Übersicht wegen verzichtet. Es wird angenommen, dass die linke Kante dem<br />

linken bzw. ersten Operanden einer Operation zugeordnet ist und entsprechend die rechte<br />

Kante dem rechten bzw. zweiten Operanden.<br />

Bemerkung 2 (Datentypbreite). Für alle Beispiele in diesem, sowie in Kapitel 5 gilt,<br />

sofern nichts anderes angegeben ist, dass die Datentypbreite auf 8 Bit festgelegt ist. Der<br />

Wertebereich von −128, . . . , 127 bzw. 0, . . . 255 wird als Z8Bit angegeben.<br />

Bemerkung 3 (Semantik von Operationen). Die Semantik aller in den Beispielen verwendeter<br />

Operationen entspricht der Semantik der Operationen in libFirm. Es handelt<br />

sich dabei um eine Modulo-Semantik, ähnlich zu den entsprechenden Hardware-Befehlen<br />

auf Assembler-Ebene. Dies ist vor allem im Zusammenhang mit Überläufen zu beachten.<br />

4.1 Ansatz<br />

Zunächst soll ein grober Überblick über die Arbeitsweise des hier vorgestellten Verfahrens<br />

Optgen zur <strong>Generierung</strong> <strong>lokaler</strong> Optimierungsregeln gegeben und die einzelnen<br />

Komponenten kurz erläutert werden.<br />

23

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!