Design and Implementation of a TriCore Backend for the LLVM Compiler Framework

Christoph Erhardt · OPUS FAU (Kooperativer Bibliotheksverbund Berlin-Brandenburg (KOBV), on behalf of the Universitätsbibliothek Erlangen-Nürnberg) · 2009

This thesis describes the development and implementation of a new backend for the LLVM compiler framework that allows the generation of machine code for the TriCore processor architecture. The TriCore architecture is an advanced platform for embedded systems which unites the features of a microcontroller, a RISC CPU and a digital signal processor. It finds use primarily in the automotive sector and other real-time systems and is employed by the Chair of Distributed Systems and Operating Systems at the University of Erlangen-Nuremberg for various research projects. LLVM is a modern compiler infrastructure with a particular focus on modularity and extensibility. For this reason, LLVM is finding increasingly widespread use in most diverse projects - from code analysis tools via just-in-time code generators through to full-blown general-purpose system compilers. In the course of the thesis, initially a technical overview of LLVM and the TriCore architecture is given. Subsequently, the design and implementation of the compiler backend are discussed in detail and a comparison to the existing GCC port is made.

Read the paper · More papers on PaperTik