Optimalizace kódu v produkčních překladačích NSWI134, 2021

Jan Hubička, hubicka@kam.mff.cuni.cz

15. března
Stručná historie překladačů. Open-source projekty: GCC, LLVM, Open64, Spider Monkey, Chrome V8. Slajdy o GCC, Video (uprostřed je výpadek).
21. března
Základní struktura překladače. Stručně lexikální a syntaktická analýza. Flex a Bison. Abstract Syntax Tree (AST). Mezijazyky Gimple, RTL, LLVM. Video.
29. března
Lokální skalární optimalizace Video (první půlka).
12. dubna
Dataflow Video. Iterative dataflow revisited.
19. dubna
Lazy code motion, partial redundancy elimination Video. Lazy code motion
26. dubna
dominátoři, SSA (úvod) Video. A simple, fast dominance algorithm
2. května
Konstrukce SSA formy Video. An efficient method of computing static single assignment form
10. května
Stavba SSA Video.
17. května
Lengauer-Tarjan Video. A fast algorithm for finding dominators in a flowgraph
24. května
Optimalizace nad SSA Video. Constant propagation with conditional branches
29. května
Optimalizace nad SSA II Video.