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í
2024-04-18 Paralelizace a vektorizace 83min 74MB
2024-04-25 Analýza ukazatelů a aliasů 84min 77MB
2024-04-25 Cvičení
2024-05-02 Analýza ukazatelů a aliasů
2024-05-09 Analýza dynamických jazyků 92min 90MB
2024-05-09 Cvičení
2024-05-16
2024-05-23 Programovací jazyky a výkonnost 84min 85MB
Další optimalizace 74min 67MB
55min 47MB
2024-05-23 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)