NSWI109 - Konstrukce překladačů

LS 2022/2023

David Bednárek

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í z předchozích semestrů. Skutečné přiřazení témat a slajdů k datům se může lišit.

Datum Téma Slides (CZ) Videos
(CZ, 2020/21)
Videos
(CZ, 2019/20)
Narrated slides
(CZ, 2019/20)
2022-02-15 Úvod
2022-02-22 Názvosloví
2022-03-01 Architektura
2022-03-08 Mezikódy 82min 86MB
2022-03-08 Cvičení: Ukázky mezikódu LLVM
2022-03-15 Alokace registrů 82min 84MB 14min 18MB
2022-03-22 Scheduling 76min 103MB
2022-03-22 Cvičení
2022-03-31 Scheduling
2022-04-05 Software pipelining 84min 83MB
2022-04-05 Cvičení
2022-04-12 Paralelizace a vektorizace 83min 74MB
2022-04-19 Analýza ukazatelů a aliasů 84min 77MB
2022-04-19 Cvičení
2022-04-26 Analýza ukazatelů a aliasů
2022-05-03 Analýza dynamických jazyků 92min 90MB
2022-05-03 Cvičení
2022-05-10 Rektorský den
2022-05-17 Programovací jazyky a výkonnost 84min 85MB
Další optimalizace 74min 67MB
55min 47MB
2022-05-17 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)