Izdanje programa za ispravljanje pogrešaka GDB 13

Predstavljeno je izdanje GDB 13.1 debuggera (prvo izdanje serije 13.x, za razvoj je korištena grana 13.0). GDB podržava otklanjanje pogrešaka na razini izvora za širok raspon programskih jezika (Ada, C, C++, D, Fortran, Go, Objective-C, Modula-2, Pascal, Rust, itd.) na različitom hardveru (i386, amd64 , ARM, Power, Sparc, RISC-V itd.) i softverske platforme (GNU/Linux, *BSD, Unix, Windows, macOS).

Ključna poboljšanja:

  • Dodana podrška za pokretanje programa za ispravljanje pogrešaka i GDBservera na GNU/Linux/LoongArch i GNU/Linux/CSKY arhitekturama.
  • Implementirana je podrška za rad na Windows platformi u asinkronom načinu rada (async).
  • Na FreeBSD platformi dodana je podrška za TLS (Thread Local Storage) varijable za ARM i AArch64 arhitekturu, a omogućena je i mogućnost korištenja hardverskih prijelomnih točaka (watchpoint) za AArch64 arhitekturu.
  • U GNU/Linux okruženju na sustavima LoongArch dodana je podrška za izračune s pomičnim zarezom.
  • Implementirane nove naredbe "maintenance set ignore-prologue-end-flag|libopcodes-styling" i "maintenance print frame-id", kao i naredbe za kontrolu stila rastavljenog ispisa (set style disassembler *).
  • Dodane su naredbe "set print nibbles [on|off]" i "show print nibbles" za kontrolu prikaza binarnih vrijednosti u grupama od četiri bajta.
  • Učinjena su poboljšanja Python API-ja. Dodan je API za upute za rastavljanje, implementiran je tip gdb.BreakpointLocation te su dodane funkcije gdb.format_address, gdb.current_language i gdb.print_options.
  • Prva verzija GDB/MI sučelja za upravljanje je zastarjela i bit će uklonjena u GDB 14.
  • Dodana podrška za odjeljke za otklanjanje pogrešaka komprimirane korištenjem zstd algoritma u ELF datotekama.
  • Dodane nove ugrađene varijable: $_inferior_thread_count, $_hit_bpnum, $_hit_locno.
  • Izlazni format naredbi 'disassemble /r' i 'record instruction-history /r' prilagođen je tako da odgovara izlazu objdumpa. Za vraćanje starog formata dodan je način rada “/b”.
  • U TUI-ju (tekstualno korisničko sučelje), stiliziranje izvornog i sklopovskog koda označenog indikatorom trenutne pozicije je onemogućeno.
  • Moguće je koristiti naredbu “document” za dokumentiranje korisničkih naredbi.
  • Dodana je mogućnost stvaranja ispisa s podacima memorijskih oznaka koji se koriste pri korištenju mehanizma ARMv8.5 MTE (MemTag, Memory Tagging Extension), koji vam omogućuje da vežete oznake za svaku operaciju dodjele memorije i organizirate provjeru pokazivača prilikom pristupa memoriji, što mora biti povezan s ispravnom oznakom.
  • DBX način kompatibilnosti je prekinut.
  • Podrška za izgradnju pomoću Pythona 2 je prekinuta.
  • Naredbe “set debug aix-solib on|off”, “show debug aix-solib”, “set debug solib-frv on|off” i “show debug solib-frv” su uklonjene, a naredbe “set/show debug" treba koristiti umjesto solib."

Izvor: opennet.ru

Dodajte komentar