HOME | ENGLISH | IMPRESSUM | KIT

Diplomarbeit (abgeschlossen): Repräsentation von Alias-Information in der Programmgraphstruktur

Die Information ob zwei Pointer denselben Speicher referenzieren (also aliasen) können, ist eine Grundlage für viele Compileroptimierungen. Zwei Pointer die nicht aliasen, arbeiten auf unterschiedlichen Teilen des Speichers, so dass sie sich gegenseitig nicht beeinflussen können.

Die Firm Zwischensprache repräsentiert Speicher als Wert und kennt Speicherabhängigkeiten, allerdings ist die Semantik eines Speicherwerts nicht klar definiert. Alias Information lässt sich als Aufspaltung des Speicherwerts repräsentieren, wobei darauf geachtet werden muss, dass Speicher nicht verdoppelt werden kann, wie das beispielsweise mit Registerinhalten möglich ist. Zu jeder Aufspaltung muss es also auch eine Vereinigung geben, damit am Ende eines Programmgraphen wieder der gesamte Speicher zurückgegeben werden kann. Im folgenden Beispiel alias a und b nicht, aber c könnte mit beiden aliasen.

Aufgabe

  • Aufstellen einer Semantik für Speicherwerte in Firm
  • Adaption der Aliasanalyse als Graphtransformation
  • Falls noch Zeit ist Erweiterung/Verbesserung der existierenden Aliasanlyse

Literatur

Voraussetzungen

  • Spaß am Übersetzerbau
  • Vorkenntnisse in Programmanlyse (Sprachtechnologie+Compiler1) werden empfohlen
  • Kenntnisse in C (oder C++)


Veröffentlichungen

Veröffentlichung
Repräsentation von Alias-Information in der Programmgraphstruktur

Betreuer

Wissenschaftliche Mitarbeiter
Andreas Zwinkau
Ehemalige Mitarbeiter
Dipl.-Inform. Matthias Braun

Studenten

Ehemalige Studenten
Christopher Frieler