Вышло большое обновление известного стека компиляторов LLVM/Clang - LLVM/Clang 22, которое содержит множество улучшений. Среди основных нововведений LLVM/Clang 22 можно отметить:
- Clang теперь поддерживает именованные циклы для C2y, а также другие ранние разработки языка C2y.
- В константных выражениях C++ теперь можно использовать больше встроенных функций SSE, AVX и AVX-512. Некоторые встроенные функции также были преобразованы в обертки встроенных функций __builtin.
- Поддержка Clang процессоров Ampere1C от Ampere Computing. Процессорные ядра Ampere-1C, вероятно, будут использоваться в Ampere Aurora.
- Отказ от 256-битной и 512-битной версий AVX10, поскольку Intel, к счастью, отказалась от планов выпуска только 256-битной версии AVX10.
- Добавлена поддержка Intel Wildcat Lake с параметром -march=wildcatlake и Intel Nova Lake с параметром -march=novalake с APX и AVX10.2.
- Несколько давно назревших оптимизаций для AMD Zen 4.
- Clang на ARM64 теперь поддерживает процессоры Arm C1 Nano, C1 Pro, C1 Prmeium и C1 Ultra.
- Поддержка ассемблера и дизассемблера LLVM для расширений архитектуры Armv9.7-A (2025).
- Поддержка RISC-V для Zvfbfa для дополнительной поддержки векторных вычислений BF16.
- Добавлена модель планирования задач для процессоров NVIDIA Olympus.
- Intel добавила в репозиторий библиотеку libsycl SYCL Runtime Library.
- В LLVM 22 появилась поддержка Distributed ThinLTO "DTLTO".
- AMD внесла вклад в разработку BFloat16 для целевой платформы SPIR-V в LLVM.
- Расширения Ssctr и Smctr для RISC-V также больше не считаются экспериментальными, как и расширения Xqci и Xqccmp от Qualcomm.
- В LLVM 22 окончательно прекращена поддержка Google Native Client (NaCl).
https://discourse.llvm.org/t/llvm-22-1-0-released/89950
Post #3516
1.8K