Generierung lokaler Optimierungen - IPD Snelting
Generierung lokaler Optimierungen - IPD Snelting
Generierung lokaler Optimierungen - IPD Snelting
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
3 Verwandte Arbeiten<br />
von Bansal und Aiken. In einem separaten Prozess werden Optimierungsregeln generiert,<br />
um sie für die Verwendung in einem Übersetzer nutzbar zu machen. Im Unterschied zu<br />
Bansal und Aiken setzt das hier vorgestellte Verfahren allerdings nicht auf Assembler-<br />
Ebene an, sondern verfolgt das Ziel, möglichst allgemeingültige Optimierungsregeln zu<br />
generieren, die unabhängig von der Zielarchitektur sind und bereits zur Optimierung der<br />
Zwischendarstellung, im Besonderen Firm, genutzt werden können.<br />
Ein weitgehend unbeachteter Aspekt im Zusammenhang mit Optimierungsregeln ist der<br />
Umgang mit Konstanten. Bansal und Aiken berücksichtigen diese zwar, beschränken<br />
sich allerdings auf die beiden Konstanten 0 und 1 sowie zwei symbolische Konstanten<br />
c0 und c1, mit denen eingeschränkt von konkreten Konstanten abstrahiert werden kann.<br />
Dennoch sind Konstanten bei der Betrachtung bzw. Suche von Optimierungsregeln interessant.<br />
Einfache Regeln, wie sie beispielsweise in 3.1 und 3.2 dargestellt sind, werden<br />
zwar meist berücksichtigt, komplexere Regeln wie in 3.3 und 3.4 gezeigt, werden jedoch<br />
i. d. R. ignoriert.<br />
(x ∗ 2) → x + x (3.1)<br />
x & 0 → 0 (3.2)<br />
(x + x) | -2 → -2 (3.3)<br />
(x | 8) + -8 → x & -9 (3.4)<br />
Ein Ziel dieser Arbeit ist es, alle Konstanten mit in den <strong>Generierung</strong>svorgang einzubeziehen.<br />
Dies stellt sicher, dass alle möglichen Muster berücksichtigt werden und so<br />
alle Optimierungsregeln gefunden werden können. Aufgrund ihrer Vielzahl und den sich<br />
hieraus ergebenen Kombinationsmöglichkeiten im Bezug auf die Menge der möglichen<br />
Muster, stellen Konstanten eine besondere Herausforderung an den <strong>Generierung</strong>svorgang<br />
dar. In dieser Arbeit wird gezeigt, dass sich ein vollständiger <strong>Generierung</strong>svorgang<br />
dennoch durchführen lässt.<br />
22