Gyakorlattal kapcsolatos anyagok

Gyakorlat időpont
Csütörtök 16:10-17:40
Gyakorlat helyszín
D 4-202

1. Gyakorlat

Témakörök

  • Áttekintés: fordítók architektúrája, rekruzív leszállás, balrekurzió eliminálása, GLR elemzés, optimalizáció, ütemezés, instruction selection, regiszter allokáció, cpu architektúrák, out of order execution, SIMD, CPU pipeline

A diasor elérhető innen.

2. Gyakorlat

Témakörök

  • Security megoldások fordítókban, optimalizáció mint lehetséges biztonsági rés
  • Köztes reprezentációk: Absztrakt szintaxisfa, konkrét szintaxisfa, szintaxis DAG, control flow graph, függőségi gráf, hívási gráf, lineáris kód

3. Gyakorlat

Témakörök

  • Galois leképzés, absztrakció, absztrak interpretáció, absztrakt értékkészletek
  • Hálók, fixpont iteráció, widening, transzfer függvények, over-approximation
  • Segédanyag elérhető innen, innen és innen.

4. Gyakorlat

Témakörök

  • Widening, narrowing, CFG bejárási stratégiák (preorder, postorder, reverse-postorder, worklist)
  • Dominancia, post-dominancia, liveness analízis

5. Gyakorlat

Témakörök

  • Lazy code motion/partial redundancy elimination, (slideok)

6. Gyakorlat

Témakörök

  • SSA formátum, phi csúcsok, basic block paraméterek
  • Local value numbering, Super local value numbering, extended basick blocks

7. Gyakorlat

Témakörök

  • Asszimetrikus költség az ugróutasításoknál, global block placement algoritmus.
  • Function placement algoritmusok, call chain clustering.
  • Call chain clustering blogpost elérhető innen.
  • Dead code removal

8. Gyakorlat

  • Chains of recurrences, loop strength reduction.

9. Gyakorlat

  • SSA formára hozás, fakiegyensúlyozó algoritmus.

10. Gyakorlat

  • Kódgenerálás, ütemezés, regiszter allokálás