ASSIGNMENT: Instruction selection
Zahteve zaključka
Odprto: četrtek, 24. april 2025, 13.00
Rok za oddajo: sreda, 7. maj 2025, 15.00
Sestavite generator strojnih ukazov za jedro posamezne funkcije. Strojni ukazi naj namesto registrov uporabljajo začasne spremenljivke, njihova predstavitev v programu pa naj omogoča naslednje:
- Vsak ukaz naj bo predstavljen tako, da omogoča izpis z uporabo začasnih spremenljivk ali fizičnih registrov (ti bodo znani šele po fazi dodeljevanja registrov).
- Vsakemu ukazu naj bo dodana informacija o tem, katerim začasnim spremenljivkam ukaz dodeli vrednost in vrednosti katerih začasnih spremenljivk ukaz uporabi.
- Vsakemu skočnemu ukazu naj bo dodana informacija o tem, na katero mesto v programu lahko ukaz preusmeri izvajanje (ne glede na to, da v vmesni kodi zahtevamo negativno oznako takoj za pogojnim skokom, naj ta informacija hrani obe oznaki).
- Ukazi, ki zgolj prepišejo vrednost enega registra v drugega, naj bodo ustrezno označeni.
Procesor, za katerega generirate ukaze, izberite sami.
Prevajalnik naj izpiše zaporedje generiranih ukazov za jedro vsake funkcije na standardni izhod.
Ime nove faze naj bo asmgen. Nalogo torej oddate kot datoteko xxxxxxxx-asmgen.zip v skladu s pravili, ki veljajo že ves semester.