LLVM – Plattform zur Entwicklung von Compilern und Toolchains unter einer Lizenz Apache 2.0 mit Ausnahmen.
Einige Änderungen an Klappern:
-
Jetzt startet die Kompilierung standardmäßig nicht wie zuvor in einem neuen Prozess.
-
Unterstützt C++20-Konzepte.
-
Gemäß den Standards ist Zeigerarithmetik in C und C++ nur innerhalb von Arrays zulässig. Dem Undefiniertes Verhalten Sanitizer wurden entsprechende Prüfungen hinzugefügt.
-
Verbesserte Unterstützung für OpenCL und OpemMP 5.0.
-
Das Verhalten ähnelt in einigen Fällen dem Verhalten von GCC.
Einige allgemeine Änderungen an LLVM:
-
Neue Funktionen zur Generierung optimierter Vektoranweisungen.
-
Die Möglichkeiten der interprozeduralen Optimierung im experimentellen Attractor-Framework wurden deutlich erweitert.
-
Viele Verbesserungen bei der Unterstützung verschiedener Architekturen (AArch64, ARM, MIPS, PowerPC, SystemZ, X86, WebAssembly, RISC-V).
Sowie verschiedene Verbesserungen in libclang, clangd, clang-format, clang-tidy, Static Analyzer, LLDB.
Source: linux.org.ru