Випуск Binutils 2.45: Нові можливості для розробників
Випуск Binutils 2.45: Нові можливості для розробників
GNU Project тихо представив Binutils 2.45 – набір низькорівневих командних програм для створення, перевірки та маніпулювання об’єктними файлами, бібліотеками та виконуваними файлами.
Вдосконалення в асемблері та SFrame
У цьому випуску асемблер (GAS) тепер за замовчуванням випускає секції SFrame з типом прапора SHT_GNU_SFRAME. Також ці секції позначаються новим заголовковим прапором SFRAME_F_FDE_FUNC_START_PCREL
.
Практично це означає, що інструменти для трасування стеку поза процесом стали набагато надійнішими. Крім того, s390x отримала підтримку генерації SFrame безпосередньо з директив CFI.
Підтримка нових архітектур
Щодо архітектури, Binutils 2.45 додає підтримку привілейованої специфікації v1.13, трьох нових профілів (20/22/23) та директиви .bfloat16
для робочих навантажень ML. Асемблер тепер також визнає великий список стандартних і постачальницьких розширень.
Можливості для Arm та x86
Для Arm перемикач -march=armv9.6-a
активує безліч розширень, таких як +sme2p2
, +ssve-aes
та +f8f32mm
. Це дає розробникам ранній доступ до функцій, які появляться в нових процесорах, що будуть випущені в 2025 році і пізніше.
На x86 додано підтримку криптоінструкцій PadLock XMODX від Zhaoxin, в той час як короткочасний шлях округлення AVX10.2 256 біт було видалено.
Нові можливості для LoongArch
Користувачі LoongArch також отримують нові аліси для інструкцій LA32R і дружніші попередження щодо align
та випадків оцінки виразів.
Нововведення в GAS
Нарешті, GAS (GNU Assembler) отримав кілька директив для покращення якості життя – .errif
та .warnif
. Вони дозволяють розробникам вбудовувати умовну діагностику в асемблерний код. Ці діагностики активуються лише наприкінці файлу, тому великі прошивки можуть збирати контекст перед виведенням повідомлень про помилки.
Для отримання додаткової інформації відвідайте цієї статті.