Izdaja razhroščevalnika GDB 13

Predstavljena je bila izdaja razhroščevalnika GDB 13.1 (prva izdaja serije 13.x, za razvoj je bila uporabljena veja 13.0). GDB podpira odpravljanje napak na izvorni ravni za široko paleto programskih jezikov (Ada, C, C++, D, Fortran, Go, Objective-C, Modula-2, Pascal, Rust itd.) na različni strojni opremi (i386, amd64 , ARM, Power, Sparc, RISC-V itd.) in programske platforme (GNU/Linux, *BSD, Unix, Windows, macOS).

Ključne izboljšave:

  • Dodana podpora za zagon razhroščevalnika in strežnika GDB na arhitekturah GNU/Linux/LoongArch in GNU/Linux/CSKY.
  • Implementirana je podpora za delo na platformi Windows v asinhronem načinu (async).
  • Na platformi FreeBSD je bila za arhitekturi ARM in AArch64 dodana podpora za spremenljivke TLS (Thread Local Storage), za arhitekturo AArch64 pa je bila omogočena možnost uporabe prelomnih točk strojne opreme (watchpoint).
  • V okolju GNU/Linux na sistemih LoongArch je bila dodana podpora za izračune s plavajočo vejico.
  • Implementirani novi ukazi "maintenance set ignore-prologue-end-flag|libopcodes-styling" in "maintenance print frame-id", kot tudi ukazi za nadzor sloga razstavljenega izpisa (set style disassembler *).
  • Dodana ukaza »set print nibbles [on|off]« in »show print nibbles« za nadzor prikaza binarnih vrednosti v štiribajtnih skupinah.
  • API za Python je bil izboljšan. Dodan je API za navodila za razstavljanje, implementiran je bil tip gdb.BreakpointLocation in dodane so funkcije gdb.format_address, gdb.current_language in gdb.print_options.
  • Prva različica vmesnika za upravljanje GDB/MI je bila opuščena in bo odstranjena v GDB 14.
  • Dodana podpora za odseke za odpravljanje napak, stisnjene z uporabo algoritma zstd v datotekah ELF.
  • Dodane nove vgrajene spremenljivke: $_inferior_thread_count, $_hit_bpnum, $_hit_locno.
  • Izhodni format ukazov 'disassemble /r' in 'record instruction-history /r' je bil prilagojen, da se ujema z izhodom objdump. Za vrnitev stare oblike je dodan način »/b«.
  • V TUI (besedilnem uporabniškem vmesniku) je oblikovanje izvorne in zbirne kode, označeno z indikatorjem trenutnega položaja, onemogočeno.
  • Možno je uporabiti ukaz “document” za dokumentiranje uporabniških ukazov.
  • Dodana možnost ustvarjanja izpisov s podatki pomnilniške oznake, ki se uporabljajo pri uporabi mehanizma ARMv8.5 MTE (MemTag, razširitev označevanja pomnilnika), ki vam omogoča, da oznake povežete z vsako operacijo dodeljevanja pomnilnika in organizirate preverjanje kazalca pri dostopu do pomnilnika, ki mora biti povezana s pravilno oznako.
  • Način združljivosti DBX je bil ukinjen.
  • Podpora za gradnjo s Pythonom 2 je bila ukinjena.
  • Ukazi “set debug aix-solib on|off”, “show debug aix-solib”, “set debug solib-frv on|off” in “show debug solib-frv” so bili odstranjeni, ukazi “set/show debug" namesto solib."

Vir: opennet.ru

Dodaj komentar