Basser Seminar Series

Effective Tool Generation by Architecture Description

Professor. Dr. Andreas Krall
University of Technology Vienna, Austria

Wednesday 19 July 2006, 4-5 pm

School of IT Building, Lecture Theatre 123


The extremely short time to market for embedded systems makes easy retargetable tools like compilers, assemblers and instruction set simulators a requirement. Architecture description languages (ADLs) make use of one concise architecture specification for the generation of hardware, instruction set simulators and compilers. In this article we present an architecture description language for compiler generation, that allows to derive an optimized tree pattern matching instruction selector, a register allocator and an instruction scheduler. Compared to a hand-crafted backend the generated compiler produces up to 3 percent smaller and up to 9 percent faster code. The ADL is rich enough, so that other tools, like assemblers and simulators, and documentation can be obtained from one single specification.

Speaker's biography

Andreas Krall is a Professor of computer science at the Vienna University of Technology, Austria and leads the "Compilation Techniques for Embedded Processors" research laboratory. He received his PhD and MS in computer science from the Vienna University of Technology, Austria, in 1988 and 1983.

His research interests include compilers and interpreters with emphasis on code generation, compilation techniques for embedded processors, reverse compilers, binary translation, just-in-time compilers and cycle accurate architecture simulation. He developed the Vienna Abstract Machine, an abstract machine for Prolog, and leads the development of the CACAO JVM ( He is a member of the Editorial Board of the Journal of Functional and Logic Programming and the International Journal of Embedded Systems. He was General and Program Chair of SCOPES'03 and Satellite Events Chair of ETAPS'06. He used to be a Program Committee member of international conferences (PLDI'06, SAC'04'05'06, SCOPES'03'04'05, VEE'05, CC'01'02). More details about him can be found at the address: