Проект GNU объявил о выходе GNU Binutils 2.47, одного из основных компонентов набора инструментов GNU наряду с GCC, Glibc и GDB. В новой версии расширена поддержка расширений RISC-V, добавлены новые опции ассемблера и компоновщика, усовершенствованы утилиты objdump и readelf.
Ключевым нововведением стала опция ассемблера --reloc-section-sym=[all|internal|none], управляющая тем, следует ли корректировать ссылки перемещений, ссылающиеся на локально привязанные символы, для использования символов секций.
В утилитах objdump и readelf теперь доступна опция --debug-dir=DIR, позволяющая пользователям указать каталог для поиска отдельных файлов с отладочной информацией.
Ещё в objdump добавили опцию --map-global-vars для отображения расположения и типов глобальных переменных, содержащихся в объектных файлах.
В компоновщике появилась поддержка опций --start-lib и --end-lib. Они позволяют работать с группой объектных файлов как со статическим архивом без необходимости предварительно создавать сам архивный файл.
Также в релизе представлены опции --link-mapless и --no-link-mapless, управляющие обработкой архивов, не содержащих индекса символов.
Ещё одно важное изменение касается компоновщика BFD. Теперь он поддерживает нулевой уровень оптимизации через опцию -O 0. При этом уровне компоновщик перестаёт объединять содержимое секций, допускающих слияние. Как указано в описании выпуска, отключение этой оптимизации может значительно ускорить процесс компоновки, хотя итоговые двоичные файлы могут стать крупнее.
В GNU Binutils 2.47 также расширена поддержка RISC-V: добавлены стандартные расширения zalasr 1.0, svrsw60t59b 1.0, zvabd 1.0 и smpmpmt 1.0.
Плюс к этому добавили поддержку нескольких векторных расширений для операций умножения с накоплением: zvqwdota8i, zvqwdota16i, zvfwdota16bf, zvfqwdota8f, zvqwbdota8i, zvqwbdota16i, zvfwbdota16bf, zvfqwbdota8f и zvfbdota32f.
Наконец, поддержка 32-битной архитектуры IBM S/390 объявлена устаревшей. При этом цель 64-битного S/390x по-прежнему поддерживается и активно разрабатывается.
Подробности можно найти в анонсе.
GNU Binutils 2.47 доступен для загрузки в исходном коде с зеркал GNU. Пользователи rolling-release дистрибутивов Linux, как обычно, получат новую версию через свои репозитории после завершения необходимого тестирования и интеграции пакетными мейнтейнерами.




Пока нет комментариев. Будьте первым!