LLVM – platforma za razvoj kompajlera i alatnih lanaca pod licencom Apache 2.0 sa izuzecima.
Neke promjene na clang:
-
Sada, po defaultu, kompilacija ne počinje u novom procesu kao prije.
-
Podržano C++20 koncepti.
-
Aritmetika pokazivača u C i C++ je dozvoljena samo unutar nizova, prema standardima. Dodane su odgovarajuće provjere u Undefined Behavior Sanitizer.
-
Poboljšana podrška za OpenCL i OpemMP 5.0.
-
Ponašanje je u nekim slučajevima blisko ponašanju GCC-a.
Neke generalne promjene u LLVM:
-
Nove intrinzike za generiranje optimiziranih vektorskih instrukcija.
-
Značajno su proširene mogućnosti interproceduralne optimizacije u eksperimentalnom okviru Attractor.
-
Mnoga poboljšanja u podršci za različite arhitekture (AAarch64, ARM, MIPS, PowerPC, SystemZ, X86, WebAssembly, RISC-V).
Kao i razna poboljšanja u libclang, clangd, clang-format, clang-tidy, Static Analyzer, LLDB.
izvor: linux.org.ru