Extrakce grafu toku řízení z formátu LLVM IR
Extraction of Control Flow Graph from LLVM IR Format

Autor
Vedoucí práce
Smrčka, AlešOponent
Šoková, VeronikaKlasifikace
CAltmetrics
Metadata
Zobrazit celý záznamAbstrakt
Tato bakalářská práce se zabývá návrhem a implementací extrakce grafů toku řízení ze zdrojových souborů jazyků C a C++ ve formátu LLVM IR. K tomu účelu bylo použito rozhraní LibTooling překladače Clang, pomocí něhož byl tento extraktor implementován jako samostatný nástroj. Výstup programu odpovídá požadavkům platformy Testos, jemuž poskytuje data pro automatické generování testovacích požadavků na základě specifického pokrytí. This Bachelor's thesis deals with design and implementation of control flow graphs extraction from source files in C and C++ language to LLVM IR format. The extractor was implemented as a standalone tool using the LibTooling interface of the Clang compiler. Output of this tool follows the requirements of platform Testos, so it can be used for automated generation of test requirements based on specified coverage criteria.
Klíčová slova
cfg, graf toku řízení, llvm, clang, mezikód, testování, libtooling, jazyk c, jazyk c++, jednotkové testování, cfg, control flow graph, llvm, clang, intermediate representation, testing, libtooling, c language, c++ language, unit testingJazyk
čeština (Czech)Studijní obor
Informační technologieSložení komise
doc. Ing. Jaroslav Zendulka, CSc. (předseda) doc. Dr. Ing. Otto Fučík (místopředseda) Ing. František Grézl, Ph.D. (člen) Ing. Petr Matoušek, Ph.D. (člen) Ing. Aleš Smrčka, Ph.D. (člen)Termín obhajoby
2017-06-12Průběh obhajoby
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ázky 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 " C ". Otázky u obhajoby: Zvažovali ste napojenie sa na LLVM IR až v 2. fázy prekladu t.j. pracovať s výstupom Clangu? Viedlo by to na nezávislosť od Clang front-endu a možnú podporu iných jazykov než len tých z rodiny C. Z akého dôvodu nerieši parameter -femit-all-decls problém popísaný v sekcii 4.4?Výsledek obhajoby
práce byla úspěšně obhájenaTrvalý odkaz
http://hdl.handle.net/11012/69772Zdrojový dokument
KONDULA, V. Extrakce grafu toku řízení z formátu LLVM IR [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2017.Kolekce
- 2017 [328]