GDB 13 hata ayıklayıcı sürümü

GDB 13.1 hata ayıklayıcısının sürümü sunuldu (13.x serisinin ilk sürümü, geliştirme için 13.0 şubesi kullanıldı). GDB, çeşitli donanımlarda (i2, amd386) çok çeşitli programlama dilleri (Ada, C, C++, D, Fortran, Go, Objective-C, Modula-64, Pascal, Rust, vb.) için kaynak düzeyinde hata ayıklamayı destekler , ARM, Power, Sparc, RISC-V, vb.) ve yazılım platformları (GNU/Linux, *BSD, Unix, Windows, macOS).

Anahtar iyileştirmeler:

  • Hata ayıklayıcıyı ve GDBserver'ı GNU/Linux/LoongArch ve GNU/Linux/CSKY mimarilerinde çalıştırmak için destek eklendi.
  • Windows platformunda eşzamansız modda (eşzamansız) çalışma desteği uygulandı.
  • FreeBSD platformunda ARM ve AArch64 mimarileri için TLS (Thread Local Storage) değişkenleri desteği eklenmiş olup, AArch64 mimarisi için donanım kesme noktalarını (watchpoint) kullanma yeteneği sağlanmıştır.
  • LoongArch sistemlerindeki GNU/Linux ortamına kayan nokta hesaplamaları desteği eklendi.
  • Yeni komutlar "bakım seti görmezden gelme-prolog-son-flag|libopcodes-styling" ve "bakım yazdırma çerçeve kimliği" komutlarının yanı sıra, demonte çıktının stilini kontrol etmeye yönelik komutlar (set style disassembler *) uygulandı.
  • İkili değerlerin dört baytlık gruplar halinde görüntülenmesini kontrol etmek için "yazdırma yarım parçalarını ayarla [açık | kapalı]" ve "yazdırma yarım parçalarını göster" komutları eklendi.
  • Python API'sinde iyileştirmeler yapıldı. Talimatları sökmek için bir API eklendi, gdb.BreakpointLocation türü uygulandı ve gdb.format_address, gdb.current_language ve gdb.print_options işlevleri eklendi.
  • GDB/MI yönetim arayüzünün ilk sürümü kullanımdan kaldırıldı ve GDB 14'te kaldırılacak.
  • ELF dosyalarında zstd algoritması kullanılarak sıkıştırılmış hata ayıklama bölümleri için destek eklendi.
  • Yeni yerleşik değişkenler eklendi: $_inferior_thread_count, $_hit_bpnum, $_hit_locno.
  • 'Disassemble /r' ve 'record talimat-history /r' komutlarının çıktı formatı, objdump çıktısıyla eşleşecek şekilde ayarlandı. Eski formata dönmek için “/b” modu eklendi.
  • TUI'de (Metin Kullanıcı Arayüzü), geçerli konum göstergesiyle vurgulanan kaynak ve montaj kodunun stili devre dışı bırakılır.
  • Kullanıcı komutlarını belgelemek için “belge” komutunu kullanmak mümkündür.
  • ARMv8.5 MTE (MemTag, Bellek Etiketleme Uzantısı) mekanizmasını kullanırken kullanılan bellek etiketi verileriyle dökümler oluşturma yeteneği eklendi; bu, etiketleri her bellek ayırma işlemine bağlamanıza ve belleğe erişirken bir işaretçi kontrolü düzenlemenize olanak tanır. doğru etiketle ilişkilendirilmiş.
  • DBX uyumluluk modu durduruldu.
  • Python 2 kullanarak derleme desteği durduruldu.
  • “set debug aix-solib on|off”, “show debug aix-solib”, “set debug solib-frv on|off” ve “show debug solib-frv” komutları kaldırılmış olup, “set/show” komutları kaldırılmıştır. solib yerine "debug" kullanılmalıdır."

Kaynak: opennet.ru

Yorum ekle