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.

Beispiel 2: Entfernen optimaler Muster<br />

4 Implementierung<br />

Für dieses Beispiel wird aus Darstellungsgründen angenommen, dass die Datentypbreite<br />

von Variablen auf 3 Bit reduziert und der Wertebereich von Konstanten auf {-4,. . . ,3}<br />

beschränkt ist. Ausgangspunkt dieses Beispiels ist die Abbildung 4.28. Wie sich zeigt,<br />

existiert für jedes Muster aus der Abbildung mit negativer Konstante ein semantisch<br />

äquivalentes Muster mit positiver Konstante. Bei näherer Betrachtung erkennt man,<br />

das für die Konstanten ein Zusammenhang durch die Relation sc0new = sc0old<br />

+ (−4)<br />

gegeben ist. Mittels komplexer symbolischer Konstanten lässt sich eine verallgemeinerte<br />

Regel angeben, die in Abbildung 4.29 gezeigt wird.<br />

−1<br />

−2<br />

−3<br />

−4<br />

sub<br />

add<br />

m<br />

var0<br />

var0<br />

var0<br />

var0<br />

r0<br />

⇒<br />

3 var0<br />

r1<br />

⇒<br />

2 var0<br />

r2<br />

⇒<br />

1 var0<br />

r3<br />

⇒<br />

Abbildung 4.28: Für jedes Muster mit negativer Konstante (linkes) existiert ein semantisch<br />

äquivalentes Muster mit positiver Konstante (rechts). Pro Paar ist<br />

eine Regel möglich.<br />

Hier besteht, ähnlich zu dem vorherigen Beispiel, das Problem, dass die in Abbildung 4.29<br />

dargestellte Regel r nach ihrer Anwendung auf ein Muster m auch auf das resultierende<br />

Muster m ′ angewendet werden kann. Beispielsweise wird die Konstante −4 durch r auf<br />

die Konstante 0 abgebildet. Da der Knoten sc0 im linken Muster der Regel aber alle<br />

Konstanten überdecken kann, ist die Regel auch auf das Muster m ′ mit der Konstante<br />

0 anwendbar. 0 wird hierdurch wieder auf −4 abgebildet. Auch hier ergibt sich ein<br />

Zyklus von anwendbaren Regeln, genauer von r, durch den nicht nur die Muster aus<br />

Abbildung 4.28 mit einer negativen Konstante, sondern auch die, zu diesen Mustern<br />

semantisch äquivalenten, optimalen Muster mit positiver Konstante entfernt werden.<br />

0<br />

sub<br />

add<br />

m ′<br />

var0<br />

61

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!