Login
Newsletter
Werbung

Mi, 6. Oktober 2010, 15:16

Software::Entwicklung

LLVM 2.8 veröffentlicht

Nach fast einem Jahr Entwicklung wurde die neueste Version 2.8 von LLVM freigegeben. Der mitgelieferte C++-Compiler ist nun bezüglich der ISO-Standards C++ 1998 und 2003 vollständig, und die C++-Bibliothek libc++ sowie der Debugger LLDB kamen hinzu.

Das LLVM-Team an der University of Illinois in Urbana-Champaign bezeichnet LLVM als eine Compilier-Strategie für effektive Optimierung, einen virtuellen Befehlssatz und eine Compiler-Infrastruktur. Es wird zur Zeit für Forschungen im Bereich von Compilern, Architekturen, Sicherheit und Betriebssysteme verwendet.

LLVM (Low Level Virtual Machine) definiert einen virtuellen Befehlssatz, der an RISC-Maschinen angelehnt ist, aber reichhaltige Typinformation und Datenfluss-Information zur Verfügung stellt. Dies ermöglicht zum einen ausgefeilte Transformationen des Objektcodes, andererseits kann die Information an das ausführbare Programm angehängt werden. Dies erlaubt weitere Transformationen während des Linkens, zur Laufzeit und an der ausführbaren Datei selbst, während das Programm nicht läuft.

Die neue Version 2.8 von LLVM besteht neben dem eigentlichen LLVM, das den Kern bildet, aus dem C-, C++- und Objective C++-Compiler Clang und und llvm-gcc, einer GCC-Version (ab GCC 4.5 ein Plugin namens DragonEgg), die LLVM zur Code-Generierung verwendet.

Neben der Vervollständigung des C++-Compilers und der Unterstützung von Objective C++ implementierten die Entwickler auch eine bessere Optimierung und Code-Generierung, die jetzt auch die Vektor-Instruktionen von x86-, PowerPC- und ARM-Prozessoren nutzen kann. Zudem soll die neue Bibliothek libclang die Anbindung an integrierte Entwicklungsumgebungen verbessern. Viele Microsoft-Erweiterungen von C++ werden nun ebenso unterstützt wie Blöcke und Precompiled Headers. Intern wurden die abstrakten Syntaxbäume erweitert, um die Quellcode-Information genauer wiederzugeben. Außerdem fügten die Entwickler neue Warnungen und neue Pragmas hinzu.

Daneben sind nun die in den letzten Monaten entwickelte C++-Bibliothek und der Debugger LLDB Bestandteil von LLVM. Weitere Komponenten und Unterprojekte sind in Entwicklung, zudem nutzen immer mehr externe Projekte LLVM.

Werbung
Kommentare (Insgesamt: 13 || Alle anzeigen )
Re[4]: Einsatz (Anonymous, Do, 7. Oktober 2010)
Re[4]: Einsatz (Anonymous, Do, 7. Oktober 2010)
Re[3]: Einsatz (phubar, Do, 7. Oktober 2010)
Re[4]: Einsatz (theBohemian, Do, 7. Oktober 2010)
Re[3]: Einsatz (tagesschau, Do, 7. Oktober 2010)
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung