Спустя 6 месяцев разработки было объявлено об очередном релизе LLVM. Этот релиз включает в себя большое количество изменений. Основные изменения:
- clang поддерживает все возможности текущего рабочего драфта стандарта C++, временно называемого C++1y;
- значительно улучшена поддержка С++ статическим анализатором;
- clang включает новые возможности:
- инструмент, называемый «clang-format» который может быть использован IDE или текстовым редактором для автоформатирования вашего кода в соответствии со встроенными стилями;
- новый драйвер разработанный для совместимости с Visual Studio на Windows (экспериментальная поддержка).
- значительный прирост производительности в кодогенераторе;
- автоматическая векторизация циклов теперь включается при -Os и -O2 в дополнение к -O3 (для каждого уровня включаются, соответственным образом настроенные, эвристики);
- автоматическая векторизация SLP («straight-line code») теперь тоже включается по умолчанию;
- платформа R600 поддерживается по умолчанию (вместо экспериментальной поддержки);
- несколько больших улучшений качества кода и времени генерации в кодогенераторе для PowerPC;
- clang -O4 больше не включает link-time оптимизацию по умолчанию. LTO доступно с флагом -flto и может быть включено при любом уровне оптимизации. Старое поведение -O4 можно получить с помощью «clang -O3 -flto»;
- llvm 3.4 будет последним релизом который будет собираться компилятором C++'98. Следующие релизы будут требовать встроенную поддержку С++'11 от компилятора.
LLVM 3.4 - это результат работы невероятного числа людей работавших вместе последние 6 месяцев, но релиз был бы невозможен без нашей команды добровольцев. Благодарности Bill Wendling за его работу по выпуску релиза, а также тестерам: Arnaud A. de Grandmaison, Ben Pope, Dimitry Andric, Duncan Sands, Erik Verbruggen, Hans Wennborg, Nikola Smiljanic, Paweł Worach, Rafael Espíndola, Renato Golin, Sebastian Dreßler, Sylvestre Ledru, and Tom Stellard.
>>> Подробности