Випуск Binutils 2.46: важливі оновлення для GNU Project
Випуск Binutils 2.46: важливі оновлення для GNU Project
Після нещодавнього випуску Coreutils 9.10 команда GNU Project представила Binutils 2.46. Це набір низькорівневих інструментів командного рядка для створення, перевірки та маніпуляції об’єктними файлами, бібліотеками та виконуваними файлами. Binutils є основним компонентом GNU toolchain поряд з gcc, glibc і gdb.
Розширена підтримка процесорів у Binutils 2.46
У Binutils 2.46 значно розширено підтримку процесорів. Тепер він підтримує процесори AMD Zen 6, а також розширює підтримку RISC-V з sdtrig v1.0 та ssstrict v1.0. Крім того, покращена сумісність з Arm. Випуск завершує підтримку інструкцій Arm v9.6 та вводить Arm v9.7 за допомогою -march=armv9.7-a. Окрім цього, також додано попередню підтримку майбутніх технологій Arm, таких як POE2 і vMTE.
Покращення в обробці SFrame і валідації
Ассемблер тепер за замовчуванням генерує SFrame Версії 3. Це підтримує бінарні файли понад 2 GiB, гнучкі макети фреймів, явне позначення зовнішніх фреймів та покращене оброблення сигналів. Binutils 2.46 також вдосконалює представлення невизначених адрес повернення у даних SFrame. Тепер вони кодуються як записи рядків фрейму без зміщень, а оновлена бібліотека libsframe надає спеціалізоване API для виявлення цієї умови.
Зміни у бібліотеках і плагінах Binutils 2.46
У новій версії з’явилася нова версійована спільна бібліотека, libsframe.so.3, яка вводить версіонування символів під простором імен LIBSFRAME_3.0. Крім того, проект посилив внутрішню валідацію та обробку плагінів. Інструменти, такі як objcopy, тепер впроваджують суворі перевірки форматів цілей, що виявляє неправильне використання, яке раніше залишалося непоміченим. Проте, стару поведінку можна використовувати, вказуючи параметри виходу явно.
Видалення старої підтримки в Binutils 2.46
У рамках поточних заходів з обслуговування Binutils 2.46 видаляє підтримку кількох застарілих цілей, таких як NaCl і Solaris на PowerPC. Це зміна відображає ширшу спробу знизити витрати на обслуговування і зосередити розробку на активно використовуваних платформах.
Дізнатися більше про випуск Binutils 2.46 ви можете на офіційному сайті проекту.




