NSWI109 - Konstrukce překladačů
LS 2021/2022
2/1 Z,Zk
Pravidla pro přednášky, zkoušky, cvičení a zápočty jsou součástí obrázků z přednášek.
Obrázky z přednášek
Tato tabulka vznikla naivní lineární transformací LS 2020/21 do LS 2021/22. Skutečné přiřazení témat a slajdů k datům bude jiné.
Datum |
Téma |
Slides (CZ) |
Videos (CZ, 2020/21) |
Videos (CZ, 2019/20) |
Narrated slides (CZ, 2019/20) |
2022-02-17 |
Úvod |
|
|
|
|
2022-02-24 |
Názvosloví |
|
|
2022-03-03 |
Architektura |
|
|
2022-03-10 |
Mezikódy |
|
|
82min 86MB
|
2022-03-10 |
Cvičení: Ukázky mezikódu LLVM |
|
|
|
2022-03-17 |
Alokace registrů |
|
|
82min 84MB
|
14min 18MB
|
2022-03-24 |
Scheduling |
|
|
|
76min 103MB
|
2022-03-24 |
Cvičení |
|
|
|
2022-03-31 |
Scheduling |
|
|
2022-04-07 |
Software pipelining |
|
|
84min 83MB
|
2022-04-07 |
Cvičení: ukázky nízkoúrovňového mezikódu LLVM |
|
|
|
2022-04-14 |
Paralelizace a vektorizace |
|
|
83min 74MB
|
2022-04-21 |
Analýza ukazatelů a aliasů |
|
|
84min 77MB
|
2022-04-21 |
Cvičení |
|
|
|
2022-04-28 |
Analýza ukazatelů a aliasů |
|
|
2022-05-05 |
Analýza dynamických jazyků |
|
|
92min 90MB
|
2022-05-05 |
Cvičení |
|
|
|
2022-05-12 |
Programovací jazyky a výkonnost |
|
|
84min 85MB
|
2022-05-19 |
Další optimalizace |
|
|
74min 67MB
55min 47MB
|
2022-05-19 |
Zápočtová písemná práce |
|
|
|
Pomůcky ke cvičení
CLANG/LLVM umožňují výpis různých forem mezikódu v různých fázích překladu. K jejich výpisu můžete využít skript
process.bash. Jedním z výstupů je soubor *.instrs, který obsahuje dumpy MIR po jednotlivých fázích - k jeho rozdělení na kousky slouží skript split_instrs.py.
Credit: XKCD (CC BY-NC 2.5)