Дата публикации:Tue, 21 Feb 2023 11:25:38 +0300
Представлен релиз отладчика GDB 13.1 (первый выпуск серии 13.x, ветка 13.0 использовалась для разработки). GDB поддерживает отладку на уровне исходных текстов для широкого спектра языков программирования (Ada, C, C++, D, Fortran, Go, Objective-C, Modula-2, Pascal, Rust и т.д.) на различных аппаратных (i386, amd64, ARM, Power, Sparc, RISC-V и т.д.) и программных платформах (GNU/Linux, *BSD, Unix, Windows, macOS).
Ключевые улучшения:
- Добавлена поддержка запуска отладчика и GDBserver на архитектурах GNU/Linux/LoongArch и GNU/Linux/CSKY.
Реализована поддержка работы на платформе Windows в асинхронном режиме (async).
На платформе FreeBSD для архитектур ARM и AArch64 добавлена поддержка переменных TLS (Thread Local Storage), а для архитектуры AArch64 предоставлена возможность использования аппаратных точек останова (watchpoint).
В окружении GNU/Linux на системах LoongArch добавлена поддержка вычислений с плавающей запятой.
Реализованы новые команды "maintenance set ignore-prologue-end-flag|libopcodes-styling" и "maintenance print frame-id", а также команды для управления стилем дизассемблируемого вывода (set style disassembler *).
Добавлены команды "set print nibbles [on|off]" и "show print nibbles" для управления отображением бинарных значений в четырёхбайтовых группах.
Внесены улучшения в Python API. Добавлен API для дизассемблирования инструкций, реализован тип gdb.BreakpointLocation, добавлены функции
gdb.format_address, gdb.current_language и gdb.print_options.
В программном интерфейсе управления GDB/MI объявлена устаревшей первая версия интерфейса MI, которая будет удалена в ветке GDB 14.
В ELF-файлах добавлена поддержка отладочных секций, сжатых с использованием алгоритма zstd.
Добавлены новые встроенные переменные: $_inferior_thread_count, $_hit_bpnum, $_hit_locno.
Формат вывода команд 'disassemble /r' и 'record instruction-history /r' приведён в соответствие с выводом objdump. Для возвращения старого формата добавлен режим "/b".
В интерфейсе TUI (Text User Interface) отключена стилизация исходного и ассемблерного кода, выделенного индикатором текущей позиции.
Предоставлена возможность использования команды
"document" для документирования пользовательских команд.
Добавлена возможность создания дампов с данными тегов памяти, применяемых при использовании механизма ARMv8.5 MTE (MemTag, Memory Tagging Extension), позволяющего привязать теги к каждой операции выделения памяти и организовать при доступе к памяти проверку указателя, который должен быть связан с корректным тегом.
Прекращена поддержка режима совместимости с DBX.
Прекращена поддержка сборки с использованием Python 2.
Удалены команды "set debug aix-solib on|off", "show debug aix-solib", "set debug solib-frv on|off" и "show debug solib-frv", вместо которых следует использовать команды "set/show debug solib".
Новость позаимствована с opennet.ru
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=58682