<div class="csl-bib-body">
<div class="csl-entry">Per, K. (2025). <i>LLVM Compiler Generator in OpenVADL</i> [Diploma Thesis, Technische Universität Wien]. reposiTUm. https://doi.org/10.34726/hss.2025.122088</div>
</div>
-
dc.identifier.uri
https://doi.org/10.34726/hss.2025.122088
-
dc.identifier.uri
http://hdl.handle.net/20.500.12708/224999
-
dc.description
Arbeit an der Bibliothek noch nicht eingelangt - Daten nicht geprüft
-
dc.description.abstract
Das Entwickeln von Prozessoren ist eine arbeitsintensive Aufgabe. Jede Änderung erfordert Änderungen der Toolchain. Gleichzeitig benötigt schnelle Entwicklung auch schnelle Entwicklungsiterationen. Die Vienna Architecture Description Language (VADL) ist eine Prozessorbeschreibungssprache, wo die Spezifikation als goldenes Modell dient. Die quelloffene Implementierung, OpenVADL, generiert mehrere Artifakte für das schnelle Entwickeln von Prozessoren aus der Spezifikation. Diese Arbeit präsentiert den Compiler Generator für einen LLVM-basierten C Compiler. Die größte Herausforderung ist die Ableitung von Instruktionsselektionsmustern aus den Instruktionsverhaltensgraphen in einer VADL Spezifikation. Unser Ansatz analysiert und klassifiziert jede Instruktion anhand des Instruktionsverhaltens, um dann systematisch Muster für jede Klasse zu generieren.Schließlich werden die generierten gegen öffentlich verfügbare Compiler für die Architekturen RV32IM, RV64IM und AArch64 verglichen.
de
dc.description.abstract
The development of processors is a labor-intensive task. Every design change requires the corresponding adaptation across the toolchain. At the same time, fast development requires fast iterations. The Vienna Architecture Description Language (VADL) is a processor description language in which the specification acts as golden model. Its open source implementation, OpenVADL, generates a variety of tools for rapid prototyping of processors. In this thesis, a compiler generator is presented that generates an LLVM-based C compiler from a VADL specification.The biggest challenge is deriving the instruction selection patterns from the instruction behavior specified in the VADL specification. Our approach addresses this by analyzing and classifying instructions according to their behavior, and then systematically generating instruction selection patterns for each classification label.Finally, we evaluated the generated compilers against the publicly available compilers for RV32IM, RV64IM and AArch64, respectively.
en
dc.language
English
-
dc.language.iso
en
-
dc.rights.uri
http://rightsstatements.org/vocab/InC/1.0/
-
dc.subject
compiler generation
en
dc.subject
processor description language
en
dc.subject
OpenVADL
en
dc.title
LLVM Compiler Generator in OpenVADL
en
dc.type
Thesis
en
dc.type
Hochschulschrift
de
dc.rights.license
In Copyright
en
dc.rights.license
Urheberrechtsschutz
de
dc.identifier.doi
10.34726/hss.2025.122088
-
dc.contributor.affiliation
TU Wien, Österreich
-
dc.rights.holder
Kevin Per
-
dc.publisher.place
Wien
-
tuw.version
vor
-
tuw.thesisinformation
Technische Universität Wien
-
tuw.publication.orgunit
E194 - Institut für Information Systems Engineering