Вышла новая версия 9.1 компилятора GCC.

gcc-компилятор-9.1

Эта новая версия компилятора GCC был доступен несколько дней назад с новыми функциями и исправлениями ошибок.

По словам проектной группы GNU GCC, эта новая версия, версия 9.1 - основная версия компилятора Содержит важные новые функции, недоступные в GCC 8.x или более ранних версиях. GCC 9.1 должен предоставить новые языковые функции, новые оптимизации и некоторые улучшения производительности программного обеспечения.

О GCC

НКУ это коллекция компилятора созданный проектом GNU. Точнее, бесплатное программное обеспечение способен компилировать различные языки программирования, включая C, C ++, Objective-C, Java, Ada и Fortran.

Также следует отметить, что используется для разработки большинства бесплатных программ. Последний крупный выпуск компилятора датируется маем 2018 г., версия 8.1.

Якуб Елинек, разработчик Red Hat, объяснил, что GCC 8.1 представляет собой основной выпуск, который содержит важные новые функции, недоступные в GCC 7.x и более ранних версиях GCC.

На данный момент интерфейс C ++ предоставил экспериментальную поддержку некоторых функций C ++ 2a с параметрами -std = c ++ 2a и -std = gnu ++ 2a.

В версии 8.2 на уровне общего улучшения исправлены проблемы с производительностью LTO (Link Time Optimization) из-за переполнения в алгоритме разделения при создании больших двоичных файлов.

Исправления продолжились в ветке 8.x с выпуском компилятора версии 8.3 в феврале прошлого года. Этот выпуск был выпуском с исправлением ошибок, который содержал исправления для регрессии в GCC 8.2 по сравнению с более ранними версиями GCC. 3 мая команда GCC запустила новую ветку, выпустив версию 9.

Что нового в GCC 9.1?

В этой версии Поддержка C ++ 17 введена, так как версия компилятора 8.1 больше не используетсял. Таким образом, поддержка C ++ 17 теперь стабильна.

Интерфейс C ++ реализует весь язык C ++ 17 и поддержка стандартной библиотеки C ++ близится к завершению.

El интерфейсная часть и библиотека C ++ также имеют много других функций, написанных на C ++ 2a.. Кроме того, GCC имеет новый интерфейс для языка D и теперь частично поддерживает OpenMP 5.0 и почти полностью интегрирует поддержку OpenACC 2.5.

Для многих GCC 9 - сильная версия компилятора, которая предоставляет отличные функции и улучшения для повышения производительности разработчика.

Среди множества новых функций в GCC 9.1:

  • Поддержка компиляции кода, написанного на языке программирования D;
  • В GCC добавлен новый бэкэнд AMD GCN GPU. В настоящее время реализация ограничена компиляцией однопоточных программ.
  • LRA теперь включена по умолчанию для цели ARC. Это можно контролировать с помощью -mlra.
  • Добавлена ​​поддержка кода изображения и операторов плотности ветвей и индексов.
  • В GCC был добавлен новый серверный модуль, ориентированный на процессоры C-SKY V2.
  • Поддержка Intel MPX была удалена.
  • Добавлен новый бэкэнд для поддержки процессоров OpenRISC.
  • Поддержка спецификации OpenACC 2.5 практически завершена.
  • Внутренний пакет самотестирования GCC теперь работает для C ++ и C (в отладочных версиях компилятора).
  • Поддержка Fortran в GCC также была улучшена. Теперь он обрабатывает асинхронный ввод-вывод и другие функции.
  • Межпроцедурная оптимизация (OPI), профильная оптимизация, оптимизация времени соединения (LTO), а также многие другие оптимизации для обеспечения лучшего качества кода.
  • Общее время компиляции Firefox 66 и LibreOffice 6.2.3 на 8-ядерном компьютере было сокращено примерно на 5% по сравнению с GCC 8.3. Размер объектных файлов LTO уменьшен на 7%.
  • Время LTO-соединения улучшается на 11% на 8-ядерных машинах и значительно увеличивается для более параллельных сред сборки. Последовательный этап оптимизации времени компоновки на 28% быстрее и потребляет на 20% меньше памяти. Parallel Stage теперь разбивает 128 разделов вместо 32 и снижает использование памяти для каждого пользователя на 30%.
  • Для диагностики в машиночитаемом формате была введена новая опция «-fdiagnostics-format = json».

источник: https://gcc.gnu.org


Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.