Original title:
Generátor kódu s vyměnitelnou cílovou architekturou
Translated title:
A retargetable code-generator
Authors:
Zouhar, Jan ; Král, Jaroslav (referee) ; Bednárek, David (advisor) Document type: Master’s theses
Year:
2006
Language:
cze Abstract:
[cze][eng] Práce se zabývá návrhem backendu pro kompilátor jazyka C++ s podporou generování kódu pro více cílových architektur. Backend je rozdělen na dvě části: systém popisu cílové architektury a generátor kódu. Popis cílové architektury je založen na jazyku XML. Ze vstupního XML souboru jsou pomocí XSL šablon vygenerovány C++ třídy reprezentující charakteristiky a vlastnosti architektury (instrukce, podporované datové typy, registry, atd). Tyto třídy používá generátor kódu jako zdroj informaí o cílové architektuře. Generátor kódu je na architektuře nezávislý. Hlavní fáze jsou: výběr instrukcí, plánování instrukcí, alokace registrů, generování spillkódu. Výstupem je asemblerový zdrojový kód.This work is focusing on a retargetable backend design for a C++ compiler. The backend is composed of two parts: a target architecture description and a code-generator. The architecture description is based on the XML language. A source XML le is an input for XSL templates that generate C++ classes with the architecture's characteristics such as instructions, supported data types, registers, etc. These classes are used by the code generator as a source of information about the target architecture. The code-generator is architecture-independent. The main phases are: instruction selection, instruction scheduling, register allocation, spill-code generation. The generated output is an assembly source code.
Institution: Charles University Faculties (theses)
(web)
Document availability information: Available in the Charles University Digital Repository. Original record: http://hdl.handle.net/20.500.11956/7118