HOME | ENGLISH | IMPRESSUM | KIT

Bachelor-/Masterarbeit (offen): Wiederholte Befehlsanordnung nach der Registerallokation

Ein Compiler-Backend führt (im Allgemeinen) die drei Phasen Befehlsauswahl, Befehlsanordnung und Registerallokation durch. Die Registerallokation muss unter Umständen zusätzliche Befehle einfügen, um Werte in den Speicher auszulagern. Eine wiederholte Befehlsanordnung nach der Registerallokation könnte die Laufzeit des Programms verbessern. Es gibt leider kaum aussagekräftige Literatur zu diesem Thema. In dieser Arbeit soll eine entsprechende Phase im libFirm Compiler Framework implementiert werden und experimentell die Möglichkeiten ausgelotet werden.

Aufgabe:

  • Einarbeitung in libFirm
  • Design und Implementierung einer Befehlsanordnungsphase
  • Experimente im Bezug auf die Leistungsfähigkeit einer solchen Phase

Voraussetzungen

  • Erfahrung mit libFirm
  • Kenntnisse in C und Assembler
  • Interesse am Compilerbau
  • Leidenschaft für saubere, wissenschaftliche Experimente

Schlüsselworte

Compiler, Instruction Scheduling, Register Allocation 

Betreuer

Wissenschaftliche Mitarbeiter
Sebastian Buchwald