Název:
Optimalizace přední části zpětného překladače
Překlad názvu:
Decompiler Front-End Optimizations
Autoři:
Odaloš, Matej ; Ďurfina, Lukáš (oponent) ; Křoustek, Jakub (vedoucí práce) Typ dokumentu: Bakalářské práce
Rok:
2012
Jazyk:
cze
Nakladatel: Vysoké učení technické v Brně. Fakulta informačních technologií
Abstrakt: [cze][eng]
Zpětný překladač je nástroj reverzního inženýrství umožňující rekonstrukci strojového kódu na některý z vyšších programovacích jazyků. Tato práce se zaobírá popisem tohoto nástroje, přičemž se soustředí hlavně na zpětný překladač projektu Lissom. Je tu navrhnutých několik technik pro optimalizaci překladu jako statická interpretace LLVM IR kódu a paměť pro výsledky interpretace. Další optimalizace se týkají rozšíření funkcionality přední části překladače, podporu delay slotů a detekci rozložení paměti a endianity. Implementované techniky jsou nakonec demonstrované na generovaném kódu.
Decompiler is a reverse engineering tool for translation of binary codes into one of the higher level languages. This bachelor thesis describes such a tool paying special attention on decompiler of the Lissom project. There are proposed several techniques for translation optimalization like static LLVM IR code interpretation and memory for its results. Other optimalizations are conserning addition of platform dependent features like delay slot support or memory datalayout and endianness detection. Finally implemented techniques are demostrated on several examples.
Klíčová slova:
Lissom; LLVM IR; reverzní inžinýrství; statická analýza; zpětný prekladač; decompiler; Lissom; LLVM IR; reverse engineering; static analysis
Instituce: Vysoké učení technické v Brně
(web)
Informace o dostupnosti dokumentu:
Plný text je dostupný v Digitální knihovně VUT. Původní záznam: http://hdl.handle.net/11012/55150