Что нового в LLVM:
- разработчики отказались от поддержки autoconf в пользу CMake;
- добавлена совместимость с ABI для GCC версии 5 и выше;
- добавлен анализатор
MemorySSA
, который работает быстрее и точнее, чемMemoryDependenceAnalysis
. - добавлена поддержка ThinLTO через ключ
-flto=thin
— по сравнению с обычным LTO кодогенерация намного быстрее, а итоговый код производительнее; - теперь возможно использование ключа
-march=skylake-avx512
, активирующего поддержку соответствующих процессоров Intel. - теперь присутствует полноценная поддержка ARM-архитектур Qualcomm's Kryo и Broadcom's Vulcan, начальная поддержка Cortex-R8 и ARMv8.2-A.
- для бэкенда AMDGPU реализованы шейдеры OpenGL, буферы, атомарные счётчики, шейдерные расширения.
Что нового в Clang:
- все возможности OpenCL 2.0 полностью реализованы;
- полностью реализован ОpenMP 4.5 для CPU, ведётся работа над GPU-частью;
- начато внедрение возможностей стандарта C++1z, которые активируются ключом
-std=c++1z
; - есть многочисленные изменения для ARM, MIPS и PowerPC.
>>> Подробности