GDB 13 foutopsporingsrelease

De release van de GDB 13.1-debugger is gepresenteerd (de eerste release van de 13.x-serie, de 13.0-tak werd gebruikt voor ontwikkeling). GDB ondersteunt debugging op bronniveau voor een breed scala aan programmeertalen (Ada, C, C++, D, Fortran, Go, Objective-C, Modula-2, Pascal, Rust, etc.) op verschillende hardware (i386, amd64 , ARM, Power, Sparc, RISC-V, etc.) en softwareplatforms (GNU/Linux, *BSD, Unix, Windows, macOS).

Belangrijkste verbeteringen:

  • Ondersteuning toegevoegd voor het uitvoeren van de debugger en GDBserver op GNU/Linux/LoongArch en GNU/Linux/CSKY architecturen.
  • Ondersteuning voor het werken op het Windows-platform in asynchrone modus (asynchrone) is geïmplementeerd.
  • Op het FreeBSD-platform is ondersteuning voor TLS-variabelen (Thread Local Storage) toegevoegd voor de ARM- en AArch64-architecturen, en is de mogelijkheid geboden om hardware-breekpunten (watchpoint) te gebruiken voor de AArch64-architectuur.
  • In de GNU/Linux-omgeving op LoongArch-systemen is ondersteuning voor drijvende-kommaberekeningen toegevoegd.
  • Implementeerde nieuwe commando's "onderhoudsset negeer-proloog-end-flag|libopcodes-styling" en "onderhoud print frame-id", evenals commando's om de stijl van gedemonteerde uitvoer te controleren (set style disassembler *).
  • De opdrachten "set print nibbles [on|off]" en "show print nibbles" zijn toegevoegd om de weergave van binaire waarden in groepen van vier bytes te regelen.
  • Er zijn verbeteringen aangebracht aan de Python API. Er is een API toegevoegd voor demontage-instructies, het type gdb.BreakpointLocation is geïmplementeerd en de functies gdb.format_address, gdb.current_lingual en gdb.print_options zijn toegevoegd.
  • De eerste versie van de GDB/MI-beheerinterface is verouderd en wordt verwijderd in GDB 14.
  • Ondersteuning toegevoegd voor debug-secties die zijn gecomprimeerd met behulp van het zstd-algoritme in ELF-bestanden.
  • Nieuwe ingebouwde variabelen toegevoegd: $_inferior_thread_count, $_hit_bpnum, $_hit_locno.
  • Het uitvoerformaat van de opdrachten 'disassemble /r' en 'record instruction-history /r' is aangepast zodat deze overeenkomt met de uitvoer van objdump. Om het oude formaat terug te krijgen, is de “/b”-modus toegevoegd.
  • In de TUI (Text User Interface) is de stijl van de bron- en assemblagecode, gemarkeerd door de huidige positie-indicator, uitgeschakeld.
  • Het is mogelijk om de opdracht “document” te gebruiken om gebruikersopdrachten te documenteren.
  • De mogelijkheid toegevoegd om dumps te maken met geheugentaggegevens die worden gebruikt bij gebruik van het ARMv8.5 MTE-mechanisme (MemTag, Memory Tagging Extension), waarmee u tags kunt binden aan elke geheugentoewijzingsbewerking en een pointercontrole kunt organiseren bij toegang tot geheugen, wat moet worden gedaan gekoppeld aan de juiste tag.
  • De DBX-compatibiliteitsmodus is stopgezet.
  • Ondersteuning voor het bouwen met Python 2 is stopgezet.
  • De commando's "set debug aix-solib on|off", "show debug aix-solib", "set debug solib-frv on|off" en "show debug solib-frv" zijn verwijderd, en de commando's "set/show debug” moet in plaats daarvan worden gebruikt solib."

Bron: opennet.ru

Voeg een reactie