Automatizované metody hledání chyb v překladačích - Müller, Petr (Vysoké učení technické v Brně. Fakulta informačních technologií)
Tato práce se zabývá aplikací metody fuzz testing k testování překladačů a interpretů. V první části pojednává o překladačích, optimalizacích a chybách typických pro optimalizující překladač. Analyzuje vhodnost metod statické a dynamické analýzy pro hledání těchto chyb a jako vhodnou navrhuje dynamickou metodu fuzz testování. V rámci práce byl implementován nástroj pro testování překladačů používající tuto metodu, který byl aplikován na několik případů, přičemž se podařilo nalézt sérii chyb v rozšířených překladačích, a to včetně např. GCC.

This thesis discusses an application of the fuzz testing method for testing compilers and interpreters. In the first part, it deals with compilers, optimizations, and bugs typical for an optimizing compiler. It analyzes applicability of static and dynamic analysis methods for searching such bugs and proposes dynamic fuzz testing as suitable for this task. A compiler testing tool suite using this method was implemented within this thesis and applied on several real compilers, including GCC, in which the tool revealed a series of bugs.
Automated Methods of Finding Bugs in Compilers
Keywords: překladače; testování; generátor náhodných vět; gramatiky; Python; jazyk C; compilers; testing; random sentence generator; grammars; Python; C language