Presentouse a versión do depurador GDB 13.1 (o primeiro lanzamento da serie 13.x, utilizouse a rama 13.0 para o desenvolvemento). GDB admite a depuración a nivel de orixe para unha ampla gama de linguaxes de programación (Ada, C, C++, D, Fortran, Go, Objective-C, Modula-2, Pascal, Rust, etc.) en varios hardware (i386, amd64). , ARM, Power, Sparc, RISC-V, etc.) e plataformas de software (GNU/Linux, *BSD, Unix, Windows, macOS).
Melloras clave:
- Engadido soporte para executar o depurador e GDBserver en arquitecturas GNU/Linux/LoongArch e GNU/Linux/CSKY.
- Implementouse o soporte para traballar na plataforma Windows en modo asíncrono (async).
- Na plataforma FreeBSD, engadiuse soporte para variables TLS (Thread Local Storage) para as arquitecturas ARM e AArch64, e proporcionouse a capacidade de usar puntos de interrupción de hardware (punto de vixilancia) para a arquitectura AArch64.
- No entorno GNU/Linux dos sistemas LoongArch, engadiuse soporte para cálculos de coma flotante.
- Implementáronse novos comandos "maintenance set ignore-prologue-end-flag|libopcodes-styling" e "maintenance print frame-id", así como comandos para controlar o estilo da saída desmontada (set style disassembler *).
- Engadíronse os comandos "set print nibbles [on|off]" e "show print nibbles" para controlar a visualización de valores binarios en grupos de catro bytes.
- Realizáronse melloras na API de Python. Engadiuse unha API para desmontar instrucións, implementouse o tipo gdb.BreakpointLocation e engadíronse as funcións gdb.format_address, gdb.current_language e gdb.print_options.
- A primeira versión da interface de xestión GDB/MI quedou en desuso e eliminarase en GDB 14.
- Engadido soporte para seccións de depuración comprimidas usando o algoritmo zstd en ficheiros ELF.
- Engadíronse novas variables integradas: $_inferior_thread_count, $_hit_bpnum, $_hit_locno.
- O formato de saída dos comandos 'desassemble /r' e 'record instruction-history /r' axustouse para que coincida coa saída de objdump. Para devolver o formato antigo, engadiuse o modo "/b".
- Na TUI (Text User Interface), o estilo do código fonte e do conxunto resaltado polo indicador de posición actual está desactivado.
- É posible usar o comando "documento" para documentar os comandos dos usuarios.
- Engadida a posibilidade de crear volcados cos datos de etiquetas de memoria que se usan cando se usa o mecanismo ARMv8.5 MTE (MemTag, Memory Tagging Extension), que permite vincular etiquetas a cada operación de asignación de memoria e organizar unha comprobación de punteiros ao acceder á memoria, que debe ser asociado coa etiqueta correcta.
- O modo de compatibilidade DBX foi descontinuado.
- O soporte para a construción usando Python 2 foi descontinuado.
- Elimináronse os comandos “set debug aix-solib on|off”, “show debug aix-solib”, “set debug solib-frv on|off” e “show debug solib-frv” e os comandos “set/show depurar" debería usarse no seu lugar solib."
Fonte: opennet.ru