Generierung lokaler Optimierungen - IPD Snelting
Generierung lokaler Optimierungen - IPD Snelting
Generierung lokaler Optimierungen - IPD Snelting
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