Detail práce
Alias analýza v překladači jazyka C
Táto práca sa venuje problematike alias analýzy a možnostiam jej vylepšenia v LLVM frameworku. Cieľom tejto práce je zlepšiť jej presnosť, čoho bolo dosiahnuté rozšírením implementácie Andersenovho algoritmu o citlivosť na položky štruktúr. Vysvetlené sú pojmy súvisiace s alias analýzou a je popísaný princíp algoritmov alias analýzy. Predstavený je koncept LLVM frameworku, popísané sú aktuálne implementované algoritmy alias analýzy. Porovnanie týchto algoritmov bolo vykonané z pohľadu ich princípu fungovania, vlastností a obmedzení. Implementácia citlivosti na položky štruktúr bola vyskúšaná na sade programov, ktorými sa testujú prekladače. Bol preskúmaný jej vplyv na rýchlosť prekladu programov a ich výkonnosť. Získané výsledky preukazujú zvýšenie presnosti alias analýzy v LLVM frameworku.
alias analýza, analýza ukazovateľov, optimalizácie, ukazovateľ, štruktúra, položka, statická analýza, LLVM, Clang
Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázku oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm "B".
- Výsledky alias analýzy obsahují i kategorie: partial alias responses a must alias responses. Proč se ve výsledcích neuvažují?
Burget Radek, doc. Ing., Ph.D. (UIFS FIT VUT), člen
Češka Milan, doc. RNDr., Ph.D. (UITS FIT VUT), člen
Fučík Otto, doc. Dr. Ing. (UPSY FIT VUT), člen
Grézl František, Ing., Ph.D. (UPGM FIT VUT), člen
@bachelorsthesis{FITBT19579, author = "D\'{a}vid Bolvansk\'{y}", type = "Bakal\'{a}\v{r}sk\'{a} pr\'{a}ce", title = "Alias anal\'{y}za v p\v{r}eklada\v{c}i jazyka C", school = "Vysok\'{e} u\v{c}en\'{i} technick\'{e} v Brn\v{e}, Fakulta informa\v{c}n\'{i}ch technologi\'{i}", year = 2018, location = "Brno, CZ", language = "czech", url = "https://www.fit.vut.cz/study/thesis/19579/" }