Compiler generation from structural architecture descriptions

Florian Brandner, Dietmar Ebner, Andreas Krall

Research output: Chapter in Book/Report/Conference proceedingArticle in proceedingsResearchpeer-review


With increasing complexity of modern embedded systems, the availability of highly optimizing compilers becomes more and more important. At the same time, application specific instruction-set processors (ASIPs) are used to fine-tune hardware platforms to the intended application, demanding the availability of retargetable components throughout thewhole tool chain.A very promising approach is to model the target architecture using a dedicated description language that is rich enough to generate hardware components and the required tool chain, e.g., assembler, linker, simulator, and compiler.In this work we present a new structural architecture description language (ADL) that is used to derive the architecture dependent components of a compiler backend - most notably an instruction selector based on tree pattern matching. We combine our backend with gcc, thereby opening up the way for a large number of readily available high level optimizations. Experimental results show that the automatically derived code generator is competitive in comparison to a handcrafted compiler backend.
Keyword: retargetable compiler,ADL,architecture description
Original languageEnglish
Title of host publicationCASES '07 Proceedings of the 2007 international conference on Compilers, architecture, and synthesis for embedded systems
PublisherACM USA
Publication date2007
ISBN (Print)978-1-59593-826-8
Publication statusPublished - 2007
Externally publishedYes
EventInternational Conference on Compilers, Architecture and Synthesis for Embedded Systems -
Duration: 1 Jan 2007 → …


ConferenceInternational Conference on Compilers, Architecture and Synthesis for Embedded Systems
Period01/01/2007 → …


Dive into the research topics of 'Compiler generation from structural architecture descriptions'. Together they form a unique fingerprint.

Cite this