Seminar LLVM Intensivseminar: Compiler-Entwicklung, Clang, MLIR, ORC JIT und Backends

Das Intensivseminar bündelt die fachlichen Kernthemen der weiteren LLVM-Seminare in einem zusammenhängenden Wochenformat. Es ersetzt keine mehrwöchige Spezialausbildung, schafft aber eine belastbare Gesamtperspektive auf Frontend, IR, Optimierung, JIT, MLIR, Toolchain-Betrieb und Backend-Strukturen.

Die maximale Dauer von fünf Tagen wird vollständig genutzt, weil die Themen technisch stark gekoppelt sind. Die Inhalte sind priorisiert: Grundlagen und IR bilden die Basis, danach folgen Tooling, Passes, JIT, MLIR, Toolchain Engineering und Backend-Einordnung.

Kapitel 1: Gesamtarchitektur und IR-Fundament

Inhaltsverzeichnis

  • LLVM-Projektkomponenten
  • IR-Struktur und SSA
  • Optimierungspipelines

Schritt 1: Komponentenkarte erstellen

LLVM Core, Clang, LLD, LLDB, MLIR und Runtime-nahe Komponenten werden in einer Architekturkarte verortet. Verantwortlichkeiten und typische Schnittstellen werden klar getrennt.

Schritt 2: IR als gemeinsame Ebene nutzen

Ein Beispiel wird vom Quelltext zur LLVM IR verfolgt. Module, Funktionen, Basic Blocks, Instruktionen, Typen und Metadaten werden als Arbeitsmodell etabliert.

Schritt 3: Optimierung einordnen

Pass-Pipelines werden als Folge von Analysen und Transformationen betrachtet. Die Auswirkungen von Optimierungsstufen auf Debugbarkeit, Performance und Codegröße werden bewertet.

Kapitel 2: Clang Tooling und Pass-Entwicklung

Inhaltsverzeichnis

  • AST-basierte Analyse
  • New Pass Manager
  • Tests und Diagnose

Schritt 1: Frontend-Informationen extrahieren

Clang-basierte Werkzeuge lesen AST-Strukturen, Typinformationen und Quellpositionen. Daraus entstehen Analyseergebnisse für Refactoring, Migration und Richtlinienprüfung.

Schritt 2: IR-Pass strukturieren

Ein einfacher Pass wird konzeptionell in Registrierung, Run-Methode, Analysezugriffe und Preserved Analyses gegliedert. Die Einbettung in Pipelines wird nachvollzogen.

Schritt 3: Qualität absichern

Frontend- und IR-nahe Prüfungen werden mit kleinen Testfällen abgesichert. Erwartete Ausgaben werden stabil formuliert, damit spätere LLVM-Änderungen nicht zu fragilen Tests führen.

Kapitel 3: JIT, MLIR und Toolchain-Betrieb

Inhaltsverzeichnis

  • ORC JIT und Symbolauflösung
  • MLIR-Dialekte und Lowering
  • Build, Cross-Compilation und Sanitizer

Schritt 1: JIT-Architektur modellieren

Module, JIT-Dylibs, Symbolauflösung und Materialisierung werden als Laufzeitmodell betrachtet. Daraus entsteht ein Verständnis für REPLs, Plugins und dynamische Ausführung.

Schritt 2: MLIR-Pipeline skizzieren

Ein höherstufiger Dialekt wird schrittweise in niedrigere Repräsentationen überführt. Dialect Conversion, Pattern Rewriting und LLVM-IR-Übersetzung werden als zusammenhängende Kette eingeordnet.

Schritt 3: Toolchain reproduzierbar machen

Build-Varianten, Zielplattformen, Linker, LTO und Sanitizer werden als Betriebsaspekte einer LLVM-basierten Toolchain betrachtet. Der Fokus liegt auf nachvollziehbaren Artefakten und Diagnosepunkten.

Kapitel 4: Backend-Einordnung und Gesamtprojekt

Inhaltsverzeichnis

  • Target-Beschreibung und TableGen
  • Codegen-Pipeline
  • Abschlussübung ohne Fazit

Schritt 1: Target-Modell verstehen

Register, Instruktionen, Subtargets und Calling Convention werden als zentrale Bausteine eines Backends eingeordnet. TableGen wird als deklarative Beschreibungsschicht genutzt.

Schritt 2: Codegen-Fehler lokalisieren

Fehlerbilder werden verschiedenen Pipeline-Abschnitten zugeordnet: IR, Legalization, Instruction Selection, Register Allocation, Assembler-Ausgabe oder Linken.

Schritt 3: Gesamtübung durchführen

Ein kleines Szenario kombiniert Quellcodeanalyse, IR-Prüfung, Optimierung, JIT-Ausführung und Toolchain-Diagnose. Die Arbeitsschritte werden dokumentiert und fachlich bewertet.

Fachbereichsleitung / Trainerleitung / Ansprechpartner

Seminardetails

   
Dauer: 5 Tage ca. 6 h/Tag, Beginn 1. Tag: 10:00 Uhr, weitere Tage 09:00 Uhr
Preis: Öffentlich oder Live Stream: € 2.995 zzgl. MwSt.
Inhaus: € 8.500 zzgl. MwSt.
Teilnehmeranzahl: min. 2 - max. 8
Teilnehmerkreis: Compiler- und Toolchain-Teams, technische Architekten, Plattformteams, Embedded- und Performance-Engineering
Voraussetzungen: Sichere C++-Kenntnisse, Erfahrung mit Build-Systemen und Grundverständnis von Compiler-Konzepten
Standorte: Live-Online, Firmenstandort, Schulungszentrum
Unterlagen: Seminarunterlagen, Übungen, Beispielprojekte

Seminartermine

Die Ergebnissliste kann durch Anklicken der Überschrift neu sortiert werden.

Seminar Startdatum Enddatum Ort Dauer
Inhaus / Firmenseminar 5 Tage
Stream live 5 Tage
Innsbruck 5 Tage
Stream gespeichert 5 Tage
Klagenfurt 5 Tage
Bregenz 5 Tage
Linz 5 Tage
Salzburg 5 Tage
Graz 5 Tage
Wien 5 Tage
Graz 5 Tage
Wien 5 Tage
Inhaus / Firmenseminar 5 Tage
Stream live 5 Tage
Innsbruck 5 Tage
Stream gespeichert 5 Tage
Klagenfurt 5 Tage
Bregenz 5 Tage
Linz 5 Tage
Salzburg 5 Tage
Linz 5 Tage
Salzburg 5 Tage
Graz 5 Tage
Wien 5 Tage
Inhaus / Firmenseminar 5 Tage
Stream live 5 Tage
Innsbruck 5 Tage
Stream gespeichert 5 Tage
Klagenfurt 5 Tage
Bregenz 5 Tage
Klagenfurt 5 Tage
Bregenz 5 Tage
Linz 5 Tage
Salzburg 5 Tage
Graz 5 Tage
Wien 5 Tage
Inhaus / Firmenseminar 5 Tage
Stream live 5 Tage
Innsbruck 5 Tage
Stream gespeichert 5 Tage
Nach oben
Seminare als Stream SRI zertifiziert
© 2026 www.seminar-experts.at All rights reserved.  | Kontakt | Impressum | Nach oben