Details

Prevajanje programskega jezika PINS s pomočjo ogrodja LLVM
ID Milićev, Amadej (Author), ID Slivnik, Boštjan (Mentor) More about this mentor... This link opens in a new window

.pdfPDF - Presentation file, Download (374,85 KB)
MD5: E19B31895F5EE74F1CA8D8B1F48EF679

Abstract
V diplomskem delu je predstavljen razširjeni prevajalnik za programski jezik PINS, ki smo ga razvili kot nadgradnjo prevajalnika, ki smo ga implementirali v okviru predmeta Prevajalniki in navidezni stroji v drugem semestru drugega letnika študija. Cilj diplomskega dela je razširitev obstoječega prevajalnika, da namesto tolmačenja in izvajanja programa znotraj javanskega navideznega stroja prevede program v strojni jezik. To dosežemo z uporabo odprtokodnega ogrodja LLVM, ki omogoča prevajanje programa v LLVM vmesno predstavitev, iz katere nato ustvarimo izvršljivo datoteko. V diplomskem delu je podrobno opisan postopek prevajanja posameznih konstruktov programskega jezika v vmesno predstavitev. Prav tako smo primerjali hitrost izvajanja pridobljenih izvršljivih datotek s hitrostjo tolmačenja programa z originalnim prevajalnikom ter s programi, napisanimi v jeziku C.

Language:Slovenian
Keywords:prevajalnik, LLVM, vmesna predstavitev
Work type:Bachelor thesis/paper
Typology:2.11 - Undergraduate Thesis
Organization:FRI - Faculty of Computer and Information Science
Year:2024
PID:20.500.12556/RUL-165366 This link opens in a new window
COBISS.SI-ID:218107907 This link opens in a new window
Publication date in RUL:04.12.2024
Views:609
Downloads:188
Metadata:XML DC-XML DC-RDF
:
Copy citation
Share:Bookmark and Share

Secondary language

Language:English
Title:Compiling the PINS Programming Language using LLVM Compiler Infrastructure
Abstract:
This thesis presents an extended compiler for the PINS programming language, developed as an extension of the compiler implemented during the course Compilers and Virtual Machines in the second semester of the second year of study. The aim of the thesis is to upgrade the existing compiler so that, instead of interpreting the program within the Java Virtual Machine, it generates machine code. This is achieved using the open-source LLVM framework, which allows the program to be compiled into LLVM intermediate representation, from which an executable file is then created. The thesis provides a detailed description of the process of compiling individual language constructs into the intermediate representation. Additionally, it compares the execution speed of the generated executable files with the interpretation speed of the original compiler and the execution speed of programs written in the C programming language.

Keywords:compiler, LLVM, intermediate representation

Similar documents

Similar works from RUL:
Similar works from other Slovenian collections:

Back