Zum Hauptinhalt Zur Navigation Zur Suche

LLVM 3.0: Clang und Dragonegg statt LLVM-gcc

Mit neuen Funktionen haben die Entwickler LLVM 3.0 veröffentlicht. Die Unterstützung für LLVM-gcc haben die Entwickler zugunsten der Projekte Clang und Dragonegg eingestellt.
/ Jörg Thoma
4 Kommentare Auf Google folgen (öffnet im neuen Fenster)
Clang und Dragonegg ersetzen LLVM-gcc. (Bild: LLVM)
Clang und Dragonegg ersetzen LLVM-gcc. Bild: LLVM

LLVM 3.0 ist mit etlichen neuen Funktionen erschienen, darunter Optimierungen an dem In-Memory-Compiler (IR). Die Unterstützung für die MIPS-Architektur ist nicht mehr als experimentell eingestuft und LLVM-ggc wird künftig nicht mehr unterstützt. Stattdessen sollen Entwickler die externen Module Clang und Dragonegg verwenden. LLVM ist eine Sammlung von Bibliotheken und Werkzeugen, mit der sich Code plattformunabhängig in Echtzeit kompilieren lässt.

Mit einer neuen Registerzuteilung(öffnet im neuen Fenster) soll besserer Code generiert werden können. Der In-Memory-Compiler unterstützt atomare Speicheroperationen und orientiert sich damit an dem aktuellen Standard C++11 der Programmiersprache C++. Nach zahlreichen Verbesserungen stufen die Entwickler das MIPS-Backend nicht mehr als experimentell ein. Dabei haben sie die Unterstützung für MIPS1 und MIPS2 entfernt und für MIPS64 hinzugefügt. Im ARM-Backend wurden die Code-Generierung für Cortex-A9-CPUs und die ARM-Erweiterung Neon optimiert.

Das Clang-Plugin erhält unter anderem eine Referenzzählung für Objective-C und hat die Unterstützung für den C++0x-Standard optimiert. Außerdem wurden einige Funktionen des C1x-Standards implementiert. Das GCC-Frontend Dragonegg kann mit GCC 4.6 verwendet werden, eine Anpassung an die GNU Compiler Collection ist nicht mehr nötig. Der Java-Compiler VMKit kann eine Untermenge der Java-Kernbibliotheken vorab kompilieren. Damit soll die JIT-Geschwindigkeit erhöht werden.

Alle Änderungen an LLVM und den Werkzeugen haben die Entwickler in den Release Notes(öffnet im neuen Fenster) zusammengefasst. Die aktuelle Version steht auf den Servern zum Download(öffnet im neuen Fenster) bereit. LLVM erscheint unter der University of Illinois Open Source License.


Relevante Themen