LLVM - платформа для разработки компиляторов и тулчейнов под лицензией Apache 2.0 с исключениями.


Некоторые изменения в clang:




  • Теперь по умолчанию компиляция не запускается в новом процессе как раньше.




  • Поддерживаются концепты C++20.




  • Арифметика указателей в C и C++ разрешается только в пределах массивов, в соответствии со стандартами. Добавлены соответствующие проверки в Undefined Behavior Sanitizer.




  • Улучшена поддержка OpenCL и OpemMP 5.0.




  • Поведение в ряде случаев приближено к поведению GCC.




Некоторые общие изменения в LLVM:




  • Новые intrinsics для генерации оптимизированных векторных инструкций.




  • Значительно расширены возможности межпроцедурной оптимизации в экспериментальном фреймворке Attractor.




  • Множество улучшений в поддержке различных архитектур (AArch64, ARM, MIPS, PowerPC, SystemZ, X86, WebAssembly, RISC-V).




А также различные улучшения в libclang, clangd, clang-format, clang-tidy, Static Analyzer, LLDB.









 , , ,






URL записи