| Beschreibung
Übersetzer-Verifikations- und Optimierungstechniken für industrielle Programmiersprachen für moderne Architekturen. Wir forschen an der Verbesserung des Softwareprozesses im
Übersetzerbau, sowie an sprachabhängigen und
Zielmaschinen-orientierten Optimierungen. Der Augenmerk liegt
dabei auf Optimierungen für Zeigerstrukturen und für VLIW und SIMD
Architekturen, sowie der generativen Entwicklung von Backends. Wir
treiben in zahlreichen Teilprojekten die Entwicklung der dafür
nötigen Theorien und Software voran. Dabei achten wir auf
realistisch einsetzbare Lösungen. Als Plattform für
diese Forschungen konstruieren wir einen erweiterbaren Übersetzer
industrieller Sprachen wie C oder Java für Architekturen wie IA32,
SPARC, ARM oder IA64. Das Integrationsprojekt
CRS soll die nötigen Brücken
schlagen und die Software publikationsfähig machen. Kern für unsere
Arbeit ist die SSA-basierte Zwischensprache Firm. Projekte in diesem BereichAbgeschlossen
 |  | ACODA |
 |  |
 |  | Optimierung dynamischer Datenstrukturen bezüglich ihrer Cacheleistung |  |  |
 | |  | |  |
 |  | |  |  |
 | |  | |  |
 |  | AJACS |
 |  |
 |  | Applying Java to Automotive Control Systems |  |  |
 | |  | |  |
 |  | |  |  |
 | |  | |  |
 |  | CGGG |
 |  |
 |  | CodeGeneratorGenerator für Graphen |  |  |
 | |  | |  |
 |  | |  |  |
 | |  | |  |
 |  | CRS |
 |  |
 |  | Compiler Research System |  |  |
 | |  | |  |
 |  | |  |  |
 | |  | |  |
 |  | Eliteförderprogramm für Postdoktoranden |
 |  |
 |  | Postdoc-Programm, gefördert von der Landesstiftung Baden-Württemberg |  |  |
 | |  | |  |
 |  | |  |  |
 | |  | |  |
 |  | Firm |
 |  |
 |  | Graphbasierte SSA Zwischensprache mit expliziten Speicherabhängigkeiten |  |  |
 | |  | |  |
 |  | |  |  |
 | |  | |  |
 |  | Graph Rewriting |
 |  |
 |  | Werkzeuge, Anwendungen und Methoden für die Graphersetzung |  |  |
 | |  | |  |
 |  | |  |  |
 | |  | |  |
 |  | Jack |
 |  |
 |  | Integration von Jikes und Firm -- Der JAva Compiler Karlsruhe |  |  |
 | |  | |  |
 |  | |  |  |
 | |  | |  |
 |  | JOSES |
 |  |
 |  | JAVA
und CoSy Technologie
für Eingebettete
Systeme
|  |  |
 | |  | |  |
 |  | |  |  |
 | |  | |  |
 |  | MOCKA |
 |  |
 |  | MOdula-2 Compiler of KArlsruhe |  |  |
 | |  | |  |
 |  | |  |  |
 | |  | |  |
 |  | OMI/FAME |
 |  |
 |  | Fast Architectural Migration for Embedded systems |  |  |
 | |  | |  |
 |  | |  |  |
 | |  | |  |
 |  | OMI/SAFE |
 |  |
 |  | Safety for Real-Time Embedded |  |  |
 | |  | |  |
 |  | |  |  |
 | |  | |  |
 |  | Sather-K |
 |  |
 |  | Sather-K |  |  |
 | |  | |  |
 |  | |  |  |
 | |  | |  |
 |  | Verifix |
 |  |
 |  | Konstruktion korrekter Übersetzer |  |  |
 | |  | |  |
 |  | |  |  |
 | |  | |  |
Veröffentlichungen im Bereich
 |  | 2008 |
 |  |
 |  | Buchwald, Zwinkau, Befehlsauswahl auf expliziten Abhängigkeitsgraphen |  |  |
 | |  | |  |
 |  | Jakumeit, Mit GrGen.NET zu den Sternen -- Erweiterung der Regelsprache eines Graphersetzungswerkzeugs um rekursive Regeln mittels Sterngraphgrammatiken und Paargraphgrammatiken |  |  |
 | |  | |  |
 |  | Hoffmann, Jakumeit, Geiß, Graph Rewrite Rules with Structural Recursion |  |  |
 | |  | |  |
 |  | Buchwald, Erweiterung von GrGen.NET um DPO-Semantik und ungerichtete Kanten |  |  |
 | |  | |  |
 |  | Gelhausen, Derre, Geiß, Customizing GrGen.NET for Model Transformation |  |  |
 | |  | |  |
 |  | Geiß, Generation of Sierpinski Triangles: A Case Study for Graph Transformation Tools |  |  |
 | |  | |  |
 |  | Geiß, Transformation of UML Models to CSP:
A Case Study for Graph Transformation Tools |  |  |
 | |  | |  |
 |  | Geiß, Kroll, GrGen.NET: A Fast, Expressive, and General Purpose Graph Rewrite Tool |  |  |
 | |  | |  |
 |  | Denninger, Gelhausen, Geiß, Applications and Rewriting of Omnigraphs -- Exemplified in the Domain of MDD |  |  |
 | |  | |  |
 |  | Batz, Kroll, Geiß, A First Experimental Evaluation of Search Plan Driven Graph Pattern Matching |  |  |
 | |  | |  |
 |  | Schösser, Geiß, Graph Rewriting for Hardware Dependent Program Optimizations |  |  |
 | |  | |  |
| | |
 |  | 2007 |
 |  |
 |  | Schösser, Graphersetzungsregelgewinnung aus Hochsprachen und deren Anwendung |  |  |
 | |  | |  |
 |  | Jakumeit, Vorarbeiten für die Erweiterung des Graphersetzungssystems GrGen um dynamisch zusammengesetzte Muster |  |  |
 | |  | |  |
 |  | Hack, Register Allocation for Programs in SSA Form |  |  |
 | |  | |  |
 |  | Müller, Erweiterung des Graphersetzungswerkzeugs GrGen.NET um dynamische und kontextsensitive Beschleunigungstechniken |  |  |
 | |  | |  |
 |  | Kroll, Geiß, Developing Graph Transformations with GrGen.NET |  |  |
 | |  | |  |
 |  | Müller, Geiß, Speeding up Graph Transformation through Automatic Concatenation of Rewrite Rules |  |  |
 | |  | |  |
 |  | Geiß, Kroll, On Improvements of the Varro Benchmark for Graph Transformation Tools |  |  |
 | |  | |  |
 |  | Kroll, GrGen.NET: Portierung und Erweiterung des Graphersetzungssystems GrGen |  |  |
 | |  | |  |
 |  | Mallon, If-Konversion auf SSA |  |  |
 | |  | |  |
 |  | Blomer, Geiß, The GrGen.NET User Manual |  |  |
 | |  | |  |
| | |
 |  | 2006 |
 |  |
 |  | Braun, Heuristisches Auslagern in einem SSA-basierten Registerzuteiler |  |  |
 | |  | |  |
 |  | Liekweg, Compiler-Directed Automatic Memory Management |  |  |
 | |  | |  |
 |  | Geiß, Batz, Grund, Hack, Szalkowski, GrGen: A Fast SPO-Based Graph
Rewriting Tool |  |  |
 | |  | |  |
 |  | Batz, An Optimization Technique for Subgraph Matching Strategies |  |  |
 | |  | |  |
| | |
 |  | 2005 |
 |  |
 |  | Batz, Graphersetzung für eine Zwischendarstellung im Übersetzerbau |  |  |
 | |  | |  |
 |  | Szalkowski, Negative Anwendungsbedingungen
für das suchprogrammbasierte
Backend von GrGen |  |  |
 | |  | |  |
 |  | Batz, Generierung von Graphersetzungen mit programmierbarem Suchalgorithmus |  |  |
 | |  | |  |
 |  | Lindenmaier, Beck, Boesler, Geiß, Lindenmaier, Beck, Boesler, Geiß, Lindenmaier, Beck, Boesler, Geiß, Firm, an Intermediate Language for Compiler Research |  |  |
 | |  | |  |
| | |
 |  | 2004 |
 |  |
 |  | Grund, Grund, Negative Anwendungsbedingungen für den Graphersetzer GrGen |  |  |
 | |  | |  |
| | |
 |  | 2003 |
 |  |
 |  | Hack, Hack, Graphersetzung für Optimierungen in der Codeerzeugung |  |  |
 | |  | |  |
| | |
 |  | 2002 |
 |  |
 |  | Lindenmaier, Lindenmaier, libFIRM -- A Library for Compiler Optimization Research Implementing FIRM |  |  |
 | |  | |  |
| | |
 |  | 2001 |
 |  |
 |  | Trapp, Optimierung objektorientierter Programme. Übersetzungstechniken, Analysen und Transformationen. |  |  |
 | |  | |  |
 |  | Lindenmaier, Geiß, Global Configuration of Cache Optimizations |  |  |
 | |  | |  |
 |  | Gaul, Kung, AJACS: Applying Java to Automotive Control Systems |  |  |
 | |  | |  |
| | |
 |  | 2000 |
 |  |
 |  | Goos, Zimmermann, Verifying Compilers and ASMs |  |  |
 | |  | |  |
 |  | Goos, Zimmermann, ASMs for uniform description of multistep transformations |  |  |
 | |  | |  |
 |  | Gaul, Zimmermann, Goerigk, Practical Construction of Correct Compiler Implementations by Runtime Result Verification |  |  |
 | |  | |  |
 |  | Gaul, Kung, AJACS: Applying Java to Automotive Control Systems |  |  |
 | |  | |  |
| | |
 |  | 1999 |
 |  |
 |  | Gaul, Heberle, Zimmermann, Goerigk, Construction of Verified Software Systems with Program-Checking: An Application To Compiler Back-Ends |  |  |
 | |  | |  |
 |  | Goos, Zimmermann, Verification of Compilers |  |  |
 | |  | |  |
 |  | Gaul, Schumacher, Advanced Generator Techniques for Embedded Compilers |  |  |
 | |  | |  |
 |  | Heberle, Gaul, Zimmermann, Construction of Verified Compiler Front-Ends with Program-Checking |  |  |
 | |  | |  |
 |  | Genius, Assmann, Java and CoSy Technology for Embedded Systems: the JOSES Project |  |  |
 | |  | |  |
 |  | Trapp, Lindenmaier, Boesler, Documentation of the Intermediate Representation FIRM |  |  |
 | |  | |  |
| | |
 |  | 1998 |
 |  |
 |  | Dold, Gaul, Vialard, Zimmermann, ASM-Based Mechanized Verification of Compiler Backends |  |  |
 | |  | |  |
 |  | Gaul, Schumacher, Compiler Techniques for Fast Migration of Embedded Applications |  |  |
 | |  | |  |
 |  | Heberle, Löwe, Trapp, Safe Reuse of Source to Intermediate Language Compilations |  |  |
 | |  | |  |
 |  | Gaul, Goerigk, Zimmermann, Correct Programs without Proof? On Checker-Based Program Verification |  |  |
 | |  | |  |
 |  | Dold, Gaul, Zimmermann, Mechanized Verification of Compiler Back-Ends |  |  |
 | |  | |  |
 |  | Goerigk, Zimmermann, Gaul, Heberle, Hoffmann, Praktikable Konstruktion korrekter Übersetzer |  |  |
 | |  | |  |
 |  | Boesler, Boesler, Codeerzeugung aus Abhängigkeitsgraphen |  |  |
 | |  | |  |
 |  | Heuzeroth, Spezifikation und Verifikation von standardisierten Transformationen am Beispiel der imperativen Sprache IS |  |  |
 | |  | |  |
| | |
 |  | 1997 |
 |  |
 |  | Gaul, Goos, Heberle, Zimmermann, Zur Konstruktion verifizierter Übersetzer |  |  |
 | |  | |  |
 |  | Goos, Goos, Sather-K - The Language |  |  |
 | |  | |  |
 |  | Gaul, Zimmermann, On the Construction of Correct Compiler Back-Ends: An ASM Approach |  |  |
 | |  | |  |
| |