Repository contentente i Homework del corso di Linguaggi e Compilatori del CdL in Informatica dell'Università di Modena e Reggio Emilia.
La repository è organizzata nelle seguenti cartelle:
- Homework 1 (8/4/2024): Espansione del file LocalOpts con il riconoscimento delle identità algebriche, strenght reduction di moltiplicazione e divisione e ottimizzazione multi-istruzione.
- Homework 2 (22/4/2024): Descrizione di diversi problemi di ottimizzazione tramite il framework della Dataflow Analysis, tra cui Dominator Analysis, Constant Propagation e Very Busy Expressions.
- Homework 3: Implementazione del passo Loop Invariant Code Motion (E' necessario inserire il passo in RegistryDef.pass, CMakeList.txt e PassBuilder.cpp).
- Homework 4: Implementazione del passo di Loop Fusion (E' necessario inserire il passo in RegistryDef.pass, CMakeList.txt e PassBuilder.cpp).