Bylo představeno vydání ladicího programu GDB 13.1 (první vydání řady 13.x, pro vývoj byla použita větev 13.0). GDB podporuje ladění na úrovni zdroje pro širokou škálu programovacích jazyků (Ada, C, C++, D, Fortran, Go, Objective-C, Modula-2, Pascal, Rust atd.) na různém hardwaru (i386, amd64 , ARM, Power, Sparc, RISC-V atd.) a softwarové platformy (GNU/Linux, *BSD, Unix, Windows, macOS).
Klíčová vylepšení:
- Přidána podpora pro spouštění debuggeru a GDBserveru na architekturách GNU/Linux/LoongArch a GNU/Linux/CSKY.
- Byla implementována podpora pro práci na platformě Windows v asynchronním režimu (async).
- Na platformě FreeBSD byla pro architektury ARM a AArch64 přidána podpora proměnných TLS (Thread Local Storage) a pro architekturu AArch64 byla poskytnuta možnost používat hardwarové body přerušení (watchpoint).
- V prostředí GNU/Linux na systémech LoongArch byla přidána podpora pro výpočty s pohyblivou řádovou čárkou.
- Implementovány nové příkazy "maintenance set ignore-prologue-end-flag|libopcodes-styling" a "maintenance print frame-id", stejně jako příkazy pro ovládání stylu rozebraného výstupu (set style disassembler *).
- Přidány příkazy „set print nibbles [on|off]“ a „show print nibbles“ pro ovládání zobrazení binárních hodnot ve čtyřbajtových skupinách.
- Vylepšení byla provedena v Python API. Bylo přidáno API pro rozebírání instrukcí, implementován typ gdb.BreakpointLocation a byly přidány funkce gdb.format_address, gdb.current_language a gdb.print_options.
- První verze rozhraní pro správu GDB/MI byla zastaralá a bude v GDB 14 odstraněna.
- Přidána podpora pro sekce ladění komprimované pomocí algoritmu zstd v souborech ELF.
- Přidány nové vestavěné proměnné: $_inferior_thread_count, $_hit_bpnum, $_hit_locno.
- Výstupní formát příkazů 'rozbalit /r' a 'zaznamenat historii instrukce /r' byl upraven tak, aby odpovídal výstupu objdump. Pro návrat do starého formátu byl přidán režim „/b“.
- V TUI (Text User Interface) je zakázáno stylování zdrojového a sestavení kódu zvýrazněného indikátorem aktuální polohy.
- Pro dokumentaci uživatelských příkazů je možné použít příkaz „document“.
- Přidána možnost vytvářet výpisy s daty paměťových tagů používaných při použití mechanismu ARMv8.5 MTE (MemTag, Memory Tagging Extension), který umožňuje svázat tagy s každou operací alokace paměti a organizovat kontrolu ukazatele při přístupu do paměti, která musí být spojené se správnou značkou.
- Režim kompatibility DBX byl ukončen.
- Podpora pro vytváření pomocí Pythonu 2 byla ukončena.
- Příkazy „set debug aix-solib on|off“, „show debug aix-solib“, „set debug solib-frv on|off“ a „show debug solib-frv“ byly odstraněny a příkazy „set/show debug“ by měl být použit místo solib."
Zdroj: opennet.ru