zurück zum Artikel

LLVM und Clang 3.6 verbessern Kernel- und Windows-Unterstützung

Thorsten Leemhuis
LLVM und Clang 3.6 verbessern Windows- und Kernel-Unterstützung

Die neuen Versionen von LLVM Compiler Infrastructure und Clang erweitern den Support für moderne C/C++-Standards und verbessern die Unterstützung für Windows. Zudem bringen sie alles mit, um nun auch Linux-Kernel zu übersetzen.

Das LLVM-Projekt hat die Versionen 3.6 von LLVM Compiler Infrastructure und Clang freigegeben. Die neue Version des auf LLVM aufbauende Compilers für Sprachen der C-Familie verbessert über zahlreiche Fehlerkorrekturen und Erweiterungen die Windows-Unterstützung. Dadurch soll Clang nun auch unter Windows "self-hosting" sein – es kann sich also selbst übersetzen. In diesem Zug wurde auch das C++-ABI (Application Binary Interface) für Microsoft-Plattformen "mehr oder weniger fertig", wie die Dokumentation erläutert.

Mit den neuen Compiler-Werkzeugen sollen sich nun auch Linux-Kernel kompilieren lassen. Das gelingt aber nur mit Linux-Quellen, die man mit Patches von LLVMLinux [1] modifiziert hat – einem Projekt, das die LLVM-/Clang-Kompatibilität der offiziellen Linux-Quellen in den letzten Monaten bereits erheblich verbessert hat. Die neue LLVM-Version wird zudem Funktionsumfang und Performance der quelloffenen Linux-Treiber für aktuelle Radeon-Grafikkarten verbessern, denn diese greifen auf das Backend R600 von LLVM zurück, das für 3.6 verbessert wurde.

Mit der neuen Version bringt LLVM erstmals Bindings für die Programmiersprache Go mit. C-Code interpretiert Clang jetzt standardmäßig gemäß C-Sprachstandard C11; auch die derzeit vorbereitete Version 5.0 der GNU Compiler Collection (GCC) wird vermutlich so vorgehen. Die Clang-Entwickler haben zudem die Unterstützung für die nächste Version des C++-Standards ausgebaut, der derzeit als C++1z gehandelt wird und vermutlich die Bezeichnung C++17 bekommt.

Die neuen Versionen [2] stehen auf der Projekt-Homepage zum Download bereit [3]. Weitere Details zu den Neuerungen stehen in den Release Notes für LLVM 3.6 [4] und Clang 3.6 [5] (thl [6])


URL dieses Artikels:
https://www.heise.de/-2561526

Links in diesem Artikel:
[1] http://llvm.linuxfoundation.org/index.php/Main_Page
[2] http://lists.cs.uiuc.edu/pipermail/llvm-announce/2015-February/000057.html
[3] http://llvm.org/releases/
[4] http://llvm.org/releases/3.6.0/docs/ReleaseNotes.html
[5] http://llvm.org/releases/3.6.0/tools/clang/docs/ReleaseNotes.html
[6] mailto:thl@ct.de