Vydanie ladiaceho nástroja GDB 13

Bolo predstavené vydanie ladiaceho nástroja GDB 13.1 (prvé vydanie série 13.x, na vývoj bola použitá vetva 13.0). GDB podporuje ladenie na úrovni zdroja pre širokú škálu programovacích jazykov (Ada, C, C++, D, Fortran, Go, Objective-C, Modula-2, Pascal, Rust atď.) na rôznom hardvéri (i386, amd64 , ARM, Power, Sparc, RISC-V atď.) a softvérové ​​platformy (GNU/Linux, *BSD, Unix, Windows, macOS).

Kľúčové vylepšenia:

  • Pridaná podpora pre spustenie debuggera a GDBservera na architektúrach GNU/Linux/LoongArch a GNU/Linux/CSKY.
  • Bola implementovaná podpora pre prácu na platforme Windows v asynchrónnom režime (async).
  • Na platforme FreeBSD bola pridaná podpora premenných TLS (Thread Local Storage) pre architektúry ARM a AArch64 a pre architektúru AArch64 bola poskytnutá možnosť používať hardvérové ​​body prerušenia (watchpoint).
  • V prostredí GNU/Linux na systémoch LoongArch bola pridaná podpora pre výpočty s pohyblivou rádovou čiarkou.
  • Implementované nové príkazy "maintenance set ignore-prologue-end-flag|libopcodes-styling" a "maintenance print frame-id", ako aj príkazy na ovládanie štýlu rozobratého výstupu (set style disassembler *).
  • Pridané príkazy „set print nibbles [on|off]“ a „show print nibbles“ na ovládanie zobrazenia binárnych hodnôt v štvorbajtových skupinách.
  • Vylepšenia boli vykonané v Python API. Pribudlo API na rozoberanie pokynov, implementoval sa typ gdb.BreakpointLocation a pribudli funkcie gdb.format_address, gdb.current_language a gdb.print_options.
  • Prvá verzia rozhrania správy GDB/MI bola zastaraná a bude odstránená v GDB 14.
  • Pridaná podpora pre sekcie ladenia komprimované pomocou algoritmu zstd v súboroch ELF.
  • Pridané nové vstavané premenné: $_inferior_thread_count, $_hit_bpnum, $_hit_locno.
  • Výstupný formát príkazov 'rozbaliť /r' a 'zaznamenať históriu inštrukcií /r' bol upravený tak, aby zodpovedal výstupu objdump. Na vrátenie starého formátu bol pridaný režim „/b“.
  • V TUI (Text User Interface) je štylizácia zdrojového kódu a kódu zostavy zvýraznená indikátorom aktuálnej polohy vypnutá.
  • Na dokumentovanie užívateľských príkazov je možné použiť príkaz „document“.
  • Pridaná možnosť vytvárať výpisy s údajmi pamäťových tagov používaných pri použití mechanizmu ARMv8.5 MTE (MemTag, Memory Tagging Extension), ktorý vám umožňuje viazať tagy na každú operáciu alokácie pamäte a organizovať kontrolu ukazovateľa pri prístupe do pamäte, ktorá musí byť spojené so správnou značkou.
  • Režim kompatibility DBX bol ukončený.
  • Podpora budovania pomocou Pythonu 2 bola ukončená.
  • Príkazy „set debug aix-solib on|off“, „show debug aix-solib“, „set debug solib-frv on|off“ a „show debug solib-frv“ boli odstránené a príkazy „set/show debug“ by mal byť použitý namiesto solib."

Zdroj: opennet.ru

Pridať komentár