• IT-Karriere:
  • Services:

Compiler-Baukasten: LLVM 5.0 erweitert Ryzen- und AMDGPU-Unterstützung

Die Compiler-Werkzeugsammlung LLVM 5.0 erweitert die Unterstützung zahlreicher Architekturen, etwa mit dem Zen-Scheduler in AMDs Ryzen-Prozessoren sowie AMDs Grafikchips Vega und Raven Ridge in AMDGPU. Der Kompilierer Clang 5.0 unterstützt C++17 vollständig.

Artikel veröffentlicht am ,
Mit LLVM 5.0 können Entwickler für AMDs Vega-Grafikkarte kompilieren.
Mit LLVM 5.0 können Entwickler für AMDs Vega-Grafikkarte kompilieren. (Bild: LLVM)

LLVM 5.0 unterstützt weitere Scheduler in diversen Architekturen, darunter den Zen-Scheduler in AMDs Ryzen-Prozessoren. Auch die Scheduler in Intels CPUs Sandy Bridge und Silvermont sowie AMDs Jaguar-Prozessoren werden besser unterstützt. Für den Scheduler des 64-Bit-ARMv8-Prozessors ThunderX2 von Cavium gibt es ebenfalls neue Informationen. Darüber hinaus kann optimierter Code für die Goldmont-Prozessoren von Intel sowie die Prozessoren ARMv8-M, ARMv8.1-A, ARMv8.2-A und ARMv8.3-A generiert werden. Mit der Unterstützung von Gfx9 in AMDGPU kann der Treiber für AMDs Vega-Grafikkarten in der Linux-3D-Bibliothek Mesa kompiliert werden.

Stellenmarkt
  1. IKOR AG, Essen
  2. afb Application Services AG, München

Die neue Bibliothek Binary-Format stammt aus dem Support und bringt die Funktion identify_magic sowie die file_magic-Structure mit. Zudem implementiert die neue Bibliothek Struktur- und Typendefinitionen für Dwarf, Elf, Coff, Wasm und MachO. Mit dem ebenfalls neuen Werkzeug llvm-dll-tool lassen sich aus GNU Style Definition Files Importbibliotheken erzeugen. Optimierungsvorschläge im Yaml-Format können mit dem Python-Tool opt-viewer.py in HTML umgewandelt werden.

Neue Weak-Value-Handles

Der Value Handle WeakVH setzt sich selbst auf null, sobald der Wert, auf den er verweist, gelöscht wird. Der zuvor unter dem Namen WeakVH geführte Value Handle wurde in WeakTrackingVH umbenannt. Einen neuen Namen hat auch das Tool zur Manipulation des Program-Database-Format (PDB) von Microsoft bekommen: llvm-pdbdump heißt jetzt llvm-pdbutil. Mit dem Debugger LLDB lassen sich künftig Hardware-Breakpoints setzen. Außerdem gibt es Vorschläge zur Problembehebung bei Assembler.

LLVMs Compiler-Frontend Clang 5.0 unterstützt C++17 vollständig, wenn der Parameter -std=c++17 gesetzt wird. Zudem werden die Koroutinen TS unterstützt, sie waren in Version 4.0 noch als experimentell gekennzeichnet. Zudem wurden in der Vervollständigung zusätzliche C++-Keywords und Konstrukte eingebaut. Open CL erhält ebenfalls zusätzliche Funktionen. Das Ersetzen des Basic-Block-Vectorizers durch den Superword-Level-Parallelism-Vectorizer schreitet ebenfalls voran: Die Option LLVMAddBBVectorizePass wurde ausgemustert.

Polly linkt besser

Die Linker Lld und Polly erhalten ebenfalls zahlreiche Verbesserungen. Polly kompiliert Android - und besteht dabei sämtliche Robustheitstests. Auch Ffmpeg und die LLVM Testsuite kann mit Polly kompiliert werden. Zudem verwendet Polly die Optimierungs- und Diagnose-API, um Vorschläge im Yaml-Format zu generieren.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Anzeige
Spiele-Angebote
  1. 24,99€ (PS4 und Xbox One)
  2. (u. a. Need for Speed: Heat Deluxe Edition für 31,99€, FIFA 20 für 20,99€, Madden NFL 20...

Folgen Sie uns
       


Dell Latitude 7220 - Test

Das Latitude 7220 ist so stabil wie es aussieht: Es hält Wasser, Blumenerde und sogar mehrere Stürze hintereinander aus.

Dell Latitude 7220 - Test Video aufrufen
    •  /