Du befindest dich hier: FSI Informatik » Prüfungsfragen und Altklausuren » Hauptstudiumsprüfungen » Lehrstuhl 2 » Übersetzerbau 2 2017-08-09   (Übersicht)

no way to compare when less than two revisions

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.


pruefungen:hauptstudium:ls2:ueb2-2017-08-09 [09.08.2017 09:59] (aktuell) – angelegt Volschaf
Zeile 1: Zeile 1:
 +====== Übersetzerbau 2 2017-08-09 ======
 +**Fach:** Optimierungen in Übersetzern
  
 +**Prüfer:** Prof. Philippsen
 +
 +**Beisitzer:** Marius Kamp
 +
 +===== Fragen =====
 +
 + - Welche wichtige Datenstruktur haben wir denn fuer Optimierungen verwendet? ~> KFG
 +
 + - Was ist ein KFG, Basisbloecke, wie erstellt man ihn?
 +
 + - Was kann man damit machen ~> Dominanz bestimmen
 +
 + - Was ist Dominanz? Wie kann man sie bestimmen? ~> iterativer Fixpunktalgorithmus, Lengauer-Tarjan
 +
 + - Wie funktioniert iterativer Fixpunktalgorithmus?
 +
 + - Wofuer wird Dominanz benoetigt? ~> Kontrollflussabhaengigkeit
 +
 + - Was ist Dominanzgrenze, wie bestimmt man sie?
 +
 +
 +<code=java>
 +class C {
 +//...
 +}
 +
 +void foo(C p) {
 +  C c = new C();
 +  nullptrcheck(c);
 +  nullptrcheck(p);
 +  c.x = p.x
 +  // ...
 +}
 +</code>
 +
 + - Wie kann man unnoetige Nullptrchecks erkennen? ~> Datenflussanalyse
 +
 + - Bitvektorbelegung, Gen-, Kill-Mengen, Konfluenzoperator angeben.
 +
 +
 + - Was hatten wir noch an Werkzeug fuer Datenflussanalyse? ~> SSA
 +
 + - Was ist SSA?
 +
 + - Wie in SSA transformieren? ~? Wertnummerierung (Click)/Dominanzgrenzen (Cytron)
 +
 + - Click angewandt.
 +
 + - Wie aus SSA zurueck? ~> CSSA waere nett, Transformationen machen aber iA
 +Lebensspannen kaputt, also Temporaervariablen einfuehren, drei Zuweisungen.
 +
 +
 + - Was ist schleifeninvarianter Code?
 +
 + - Ist bei diesem Codestueck die Zuweisung invariant? ~> abhaenging von p ~> Aliasanalyse
 +
 + - Welche benutzen wir? ~> interprozedural, also Steensgard
 +
 + - Steensgard angewandt.
 +
 +
 + - Was sind Induktionsvariablen? Welche Arten gibt es?
 +
 + - Transformationsschablone auf gegebenes Codestueck angewandt.
 +
 + - Schleifengrenze angepasst; illegal bei Ueberlauf.