Выпуск GNU Binutils 2.38

Представлен релиз набора системных утилит GNU Binutils 2.38, в состав которого входят такие программы, как GNU linker, GNU assembler, nm, objdump, strings, strip.

В новой версии:

  • В ассемблер и компоновщик добавлена поддержка архитектуры LoongArch, применяемой в процессорах Loongson.
  • В ассемблер добавлена опция “–multibyte-handling=[allow|warn|warn-sym-only]” для выбора метода обработки многобайтовых символов. При указании значения
    warn выводится предупреждение при наличии многобайтовых символов в исходных текстах, а при указании warn-sym-only – при использовании многобайтовых символов в именах аргументов.
  • В ассемблере улучшена поддержка архитектур AArch64 и ARM, расширена поддержка системных регистров, добавлена поддержка расширения SME (Scalable Matrix Extension, добавлена поддержка процессоров Cortex-R52+, Cortex-A510, Cortex-A710,Cortex-X2, Cortex-A710, а также расширений архитектуры ‘v8.7-a’, ‘v8.8-a’, ‘v9-a’, ‘v9.1-a’, ‘armv9.2-a’ и ‘armv9.3-a’.
  • Для архитектуры x86 в ассемблер добавлена поддержка инструкций Intel AVX512_FP16.
  • В компоновщик добавлены опции: “-z pack-relative-relocs/-z nopack-relative-relocs” для управления упаковкой относительных перемещений адресов (relocation) в секции DT_RELR; “-z indirect-extern-access/-z noindirect-extern-access” для управления использованием канонических указателей на функции и копированием информации о перемещении адресов; “–max-cache-size=SIZE” для определения максимального размера кэша.
  • В утилиту elfedit добавлена опция “–output-abiversion” для обновления поля ABIVERSION в ELF-файлах.
  • В утилиты readelf, strings, nm и objdump добавлена опция “–unicode” для управления обработкой unicode-символов при выводе символьных имён или строк. При указании “–unicode=locale” unicode-строки обрабатываются в соответствии с текущей локалью, “–unicode=hex” – отображаются в виде шестнадцатеричных кодов, “–unicode=escape” – показываются в виде escale-последовательностей, “–unicode=highlight” – показываются в виде выделенных красным цветом escale-последовательностей.
  • В утилите readelf опция “-r” теперь приводит к дампу данных об относительных перемещениях (relocation).
  • В objcopy добавлена поддержка платформ efi-app-aarch64, efi-rtdrv-aarch64 и efi-bsdrv-aarch64, позволяющих использовать данную утилиту при разработке компонентов для UEFI.
  • В утилиту ar добавлена опция “–thin” для создания сокращённых (thin) архивов, содержащих только таблицы символов и ссылок.
Release. Ссылка here.