LLVM back-end for the Timber compiler

University essay from Chalmers tekniska högskola/Institutionen för data- och informationsteknik

Abstract: This master's thesis describes the design and implementation of a new backendfor the Timber compiler, based on Low Level Virtual Machine (LLVM)compiler infrastructure. The thesis describes the implementation and givesdetailed information about how a Timber program is translated into a LLVMprogram and how it is represented. Furthermore the thesis compares theexisting C based back-end with the new LLVM based back-end in termsof implementation complexity and the performance of programs that werecompiled with the respective back-ends. When compared to each other, theLLVM based back-end was found to have a performance that was equal orbetter than the C based back-end, with the cost of increased complexity ofthe compiler in the form of an abstract syntax to represent LLVM assemblycode and an interface to the abstract syntax. The overall conclusion isthat LLVM offers a suitable back-end for the Timber programming languagecompiler.

  CLICK HERE TO DOWNLOAD THE WHOLE ESSAY. (in PDF format)