head 1.1; branch 1.1.1; access; symbols netbsd-11-0-RC4:1.1.1.1 netbsd-11-0-RC3:1.1.1.1 gdb-17-1:1.1.1.2 netbsd-11-0-RC2:1.1.1.1 netbsd-11-0-RC1:1.1.1.1 gdb-16-3:1.1.1.2 perseant-exfatfs-base-20250801:1.1.1.1 netbsd-11:1.1.1.1.0.4 netbsd-11-base:1.1.1.1 gdb-15-1:1.1.1.1 perseant-exfatfs-base-20240630:1.1.1.1 perseant-exfatfs:1.1.1.1.0.2 perseant-exfatfs-base:1.1.1.1 gdb-13-2:1.1.1.1 FSF:1.1.1; locks; strict; comment @# @; 1.1 date 2023.07.30.22.44.32; author christos; state Exp; branches 1.1.1.1; next ; commitid HEIv4Prd74m1wSyE; 1.1.1.1 date 2023.07.30.22.44.32; author christos; state Exp; branches; next 1.1.1.2; commitid HEIv4Prd74m1wSyE; 1.1.1.2 date 2025.08.27.17.28.54; author christos; state Exp; branches; next ; commitid vgUAu9EQfEWNko8G; desc @@ 1.1 log @Initial revision @ text @# Support macros for the Hitachi H8 assembly test cases. ; Set up a minimal machine state .macro start .equ h8300, 0 .equ h8300h, 1 .equ h8300s, 2 .equ h8sx, 3 .if (sim_cpu == h8300s) .h8300s .else .if (sim_cpu == h8300h) .h8300h .else .if (sim_cpu == h8sx) .h8300sx .endif .endif .endif .text .align 2 .global _start _start: jmp _main .data .align 2 .global pass_str .global fail_str .global ok_str .global pass_loc .global fail_loc .global ok_loc pass_str: .ascii "pass\n" fail_str: .ascii "fail\n" ok_str: .ascii "ok\n" pass_loc16: .word pass_str pass_loc32: .long pass_str fail_loc16: .word fail_str fail_loc32: .long fail_str ok_loc16: .word ok_str ok_loc32: .long ok_str .text .global _write_and_exit _write_and_exit: ;ssize_t write(int fd, const void *buf, size_t count); ;Integer arguments have to be zero extended. .if (sim_cpu) #if __INT_MAX__ == 32767 extu.l er0 #endif .endif jsr @@@@0xc7 mov #0, r0 jmp _exit .global _exit _exit: mov.b r0l, r0h mov.w #0xdead, r1 mov.w #0xbeef, r2 sleep .global _main _main: .endm ; Exit with an exit code .macro exit code mov.w #\code, r0 jmp _exit .endm ; Output "pass\n" .macro pass mov.w #0, r0 ; fd == stdout .if (sim_cpu == h8300) mov.w #pass_str, r1 ; buf == "pass\n" mov.w #5, r2 ; len == 5 .else mov.l #pass_str, er1 ; buf == "pass\n" mov.l #5, er2 ; len == 5 .endif jmp _write_and_exit .endm ; Output "fail\n" .macro fail mov.w #0, r0 ; fd == stdout .if (sim_cpu == h8300) mov.w #fail_str, r1 ; buf == "fail\n" mov.w #5, r2 ; len == 5 .else mov.l #fail_str, er1 ; buf == "fail\n" mov.l #5, er2 ; len == 5 .endif jmp _write_and_exit .endm ; Load an 8-bit immediate value into a general register ; (reg must be r0l - r7l or r0h - r7h) .macro mvi_h_gr8 val reg mov.b #\val, \reg .endm ; Load a 16-bit immediate value into a general register ; (reg must be r0 - r7) .macro mvi_h_gr16 val reg mov.w #\val, \reg .endm ; Load a 32-bit immediate value into a general register ; (reg must be er0 - er7) .macro mvi_h_gr32 val reg mov.l #\val, \reg .endm ; Test the value of an 8-bit immediate against a general register ; (reg must be r0l - r7l or r0h - r7h) .macro test_h_gr8 val reg cmp.b #\val, \reg beq .Ltest_gr8\@@ fail .Ltest_gr8\@@: .endm ; Test the value of a 16-bit immediate against a general register ; (reg must be r0 - r7) .macro test_h_gr16 val reg h=h l=l .if (sim_cpu == h8300) test_h_gr8 (\val >> 8) \reg\h test_h_gr8 (\val & 0xff) \reg\l .else cmp.w #\val, \reg beq .Ltest_gr16\@@ fail .Ltest_gr16\@@: .endif .endm ; Test the value of a 32-bit immediate against a general register ; (reg must be er0 - er7) .macro test_h_gr32 val reg cmp.l #\val, \reg beq .Ltest_gr32\@@ fail .Ltest_gr32\@@: .endm ; Set a general register to the fixed pattern 'a5a5a5a5' .macro set_gr_a5a5 reg .if (sim_cpu == 0) ; h8300 mov.w #0xa5a5, r\reg .else mov.l #0xa5a5a5a5, er\reg .endif .endm ; Set all general registers to the fixed pattern 'a5a5a5a5' .macro set_grs_a5a5 .if (sim_cpu == 0) ; h8300 mov.w #0xa5a5, r0 mov.w #0xa5a5, r1 mov.w #0xa5a5, r2 mov.w #0xa5a5, r3 mov.w #0xa5a5, r4 mov.w #0xa5a5, r5 mov.w #0xa5a5, r6 mov.w #0xa5a5, r7 .else mov.l #0xa5a5a5a5, er0 mov.l #0xa5a5a5a5, er1 mov.l #0xa5a5a5a5, er2 mov.l #0xa5a5a5a5, er3 mov.l #0xa5a5a5a5, er4 mov.l #0xa5a5a5a5, er5 mov.l #0xa5a5a5a5, er6 mov.l #0xa5a5a5a5, er7 .endif .endm ; Test that a general register contains the fixed pattern 'a5a5a5a5' .macro test_gr_a5a5 reg .if (sim_cpu == 0) ; h8300 test_h_gr16 0xa5a5 r\reg .else test_h_gr32 0xa5a5a5a5 er\reg .endif .endm ; Test that all general regs contain the fixed pattern 'a5a5a5a5' .macro test_grs_a5a5 test_gr_a5a5 0 test_gr_a5a5 1 test_gr_a5a5 2 test_gr_a5a5 3 test_gr_a5a5 4 test_gr_a5a5 5 test_gr_a5a5 6 test_gr_a5a5 7 .endm ; Set condition code register to an explicit value .macro set_ccr val ldc #\val, ccr .endm ; Set all condition code flags to zero .macro set_ccr_zero ldc #0, ccr .endm ; Set carry flag true .macro set_carry_flag orc #1, ccr .endm ; Clear carry flag .macro clear_carry_flag andc 0xfe, ccr .endm ; Set zero flag true .macro set_zero_flag orc #4, ccr .endm ; Clear zero flag .macro clear_zero_flag andc 0xfb, ccr .endm ; Set neg flag true .macro set_neg_flag orc #8, ccr .endm ; Clear neg flag .macro clear_neg_flag andc 0xf7, ccr .endm ; Test that carry flag is clear .macro test_carry_clear bcc .Lcc\@@ fail ; carry flag not clear .Lcc\@@: .endm ; Test that carry flag is set .macro test_carry_set bcs .Lcs\@@ fail ; carry flag not clear .Lcs\@@: .endm ; Test that overflow flag is clear .macro test_ovf_clear bvc .Lvc\@@ fail ; overflow flag not clear .Lvc\@@: .endm ; Test that overflow flag is set .macro test_ovf_set bvs .Lvs\@@ fail ; overflow flag not clear .Lvs\@@: .endm ; Test that zero flag is clear .macro test_zero_clear bne .Lne\@@ fail ; zero flag not clear .Lne\@@: .endm ; Test that zero flag is set .macro test_zero_set beq .Leq\@@ fail ; zero flag not clear .Leq\@@: .endm ; Test that neg flag is clear .macro test_neg_clear bpl .Lneg\@@ fail ; negative flag not clear .Lneg\@@: .endm ; Test that neg flag is set .macro test_neg_set bmi .Lneg\@@ fail ; negative flag not clear .Lneg\@@: .endm ; Test ccr against an explicit value .macro test_ccr val .data tccr\@@: .byte 0 .text mov.b r0l, @@tccr\@@ stc ccr, r0l cmp.b #\val, r0l bne .Ltcc\@@ fail .Ltcc\@@: mov.b @@tccr\@@, r0l .endm ; Test that all (accessable) condition codes are clear .macro test_cc_clear test_carry_clear test_ovf_clear test_zero_clear test_neg_clear ; leaves H, I, U, and UI untested .endm ; Compare memory, fail if not equal (h8sx only, len > 0). .macro memcmp src dst len mov.l #\src, er5 mov.l #\dst, er6 mov.l #\len, er4 .Lmemcmp_\@@: cmp.b @@er5+, @@er6+ beq .Lmemcmp2_\@@ fail .Lmemcmp2_\@@: dec.l #1, er4 bne .Lmemcmp_\@@ .endm @ 1.1.1.1 log @Import gdb-13.2 over gdb-11.0.50 May 27th, 2023: GDB 13.2 Released! The latest version of GDB, version 13.2, is available for download. This is a minor corrective release over GDB 13.1, fixing the following issues: PR testsuite/30158 (rustc testsuite fails with 13.1, apparently worked before with trunk 20230114 on i686-linux-gnu and powerpc64le-linux-gnu) PR gdb/30214 (GDB 13.1 does not compile on FreeBSD 13.1) PR gdb/30240 ((linux/aarch) thread.c:86: internal-error: inferior_thread: Assertion `current_thread_ != nullptr' failed) PR gdb/30249 ([13 regression] hookpost-extended-remote will not work) PR exp/30271 (Addresses of static thread_local fields are badly calculated sometimes) PR symtab/30357 (Segmentation fault for the 'start' command) PR symtab/30369 ([gdb/symtab] False match issue in skip_prologue_using_linetable) PR gdb/30423 (Build failures with clang 16) PR build/30450 (Build failure (linux-low.cc:5393:45: error: expected ':' before ')' token) with musl-1.2.4) See the NEWS file for a more complete and detailed list of what this release includes. Feb 19th, 2023: GDB 13.1 Released! The latest version of GDB, version 13.1, is available for download. This version of GDB includes the following changes and enhancements: Support for the following new targets has been added in both GDB and GDBserver: GNU/Linux/LoongArch (gdbserver) loongarch*-*-linux* GNU/Linux/CSKY (gdbserver) csky*-*linux* The Windows native target now supports target async. FreeBSD: Arm and AArch64: Support for Thread Local Storage (TLS) variables Hardware watchpoint support on AArch64 FreeBSD Floating-point support has now been added on LoongArch GNU/Linux. New commands: set print nibbles [on|off] show print nibbles This controls whether the 'print/t' command will display binary values in groups of four bits, known as "nibbles". The default is 'off'. Various styling-related commands. See the gdb/NEWS file for more details. Various maintenance commands. These are normally aimed at GDB experts or developers. See the gdb/NEWS file for more details. Python API improvements: New Python API for instruction disassembly. The new attribute 'locations' of gdb.Breakpoint returns a list of gdb.BreakpointLocation objects specifying the locations where the breakpoint is inserted into the debuggee. New Python type gdb.BreakpointLocation. New function gdb.format_address(ADDRESS, PROGSPACE, ARCHITECTURE) that formats ADDRESS as 'address ' New function gdb.current_language that returns the name of the current language. Unlike gdb.parameter('language'), this will never return 'auto'. New function gdb.print_options that returns a dictionary of the prevailing print options, in the form accepted by gdb.Value.format_string. New method gdb.Frame.language that returns the name of the frame's language. gdb.Value.format_string now uses the format provided by 'print', if it is called during a 'print' or other similar operation. gdb.Value.format_string now accepts the 'summary' keyword. This can be used to request a shorter representation of a value, the way that 'set print frame-arguments scalars' does. The gdb.register_window_type method now restricts the set of acceptable window names. The first character of a window's name must start with a character in the set [a-zA-Z], every subsequent character of a window's name must be in the set [-_.a-zA-Z0-9]. ` GDB/MI changes: MI version 1 is deprecated, and will be removed in GDB 14. The async record stating the stopped reason 'breakpoint-hit' now contains an optional field locno. Miscellaneous improvements: gdb now supports zstd compressed debug sections (ELFCOMPRESS_ZSTD) for ELF. New convenience variable $_inferior_thread_count contains the number of live threads in the current inferior. New convenience variables $_hit_bpnum and $_hit_locno, set to the breakpoint number and the breakpoint location number of the breakpoint last hit. The "info breakpoints" now displays enabled breakpoint locations of disabled breakpoints as in the "y-" state. The format of 'disassemble /r' and 'record instruction-history /r' has changed to match the layout of GNU objdump when disassembling. A new format "/b" has been introduce to provide the old behavior of "/r". The TUI no longer styles the source and assembly code highlighted by the current position indicator by default. You can however re-enable styling using the new "set style tui-current-position" command. It is now possible to use the "document" command to document user-defined commands. Support for memory tag data for AArch64 MTE. Support Removal notices: DBX mode has been removed. Support for building against Python version 2 has been removed. It is now only possible to build GDB against Python 3. Support for the following commands has been removed: set debug aix-solib on|off show debug aix-solib set debug solib-frv on|off show debug solib-frv Use the "set/show debug solib" commands instead. See the NEWS file for a more complete and detailed list of what this release includes. Dec 18th, 2022: GDB 13 branch created The GDB 13 branch (gdb-13-branch) has been created. To check out a copy of the branch use: git clone --branch gdb-13-branch https://sourceware.org/git/binutils-gdb.git May 1st, 2022: GDB 12.1 Released! The latest version of GDB, version 12.1, is available for download. This version of GDB includes the following changes and enhancements: New support for the following native configuration: GNU/Linux/OpenRISC or1k*-*-linux* New support for the following targets: GNU/Linux/LoongArch loongarch*-*-linux* New GDBserver support on the following configuration: GNU/Linux/OpenRISC or1k*-*-linux* Support for the following target has been removed: S+core score-*-* Multithreaded symbol loading is now enabled by default Deprecation Notices: GDB 12 is the last release of GDB that will support building against Python 2 DBX mode is deprecated, and will be removed in GDB 13 GDB/MI changes: The '-add-inferior' with no option flags now inherits the connection of the current inferior, this restores the behaviour of GDB as it was prior to GDB 10. The '-add-inferior' command now accepts a '--no-connection' option, which causes the new inferior to start without a connection. Python API enhancements: It is now possible to add GDB/MI commands implemented in Python New function gdb.Architecture.integer_type() New gdb.events.gdb_exiting event New 'gdb.events.connection_removed' event registry New gdb.TargetConnection object New gdb.Inferior.connection property New read-only attribute gdb.InferiorThread.details New gdb.RemoteTargetConnection.send_packet method New read-only attributes gdb.Type.is_scalar and gdb.Type.is_signed The gdb.Value.format_string method now takes a 'styling' argument Various new function in the "gdb" module Miscellaneous: The FreeBSD native target now supports async mode Improved C++ template support Support for disabling source highlighting through GNU of the Pygments library instead. The "print" command has been changed so as to print floating-point values with a base-modifying formats such as "/x" to display the underlying bytes of the value in the desired base. The "clone-inferior" command now ensures that the TTY, CMD and ARGS settings are copied from the original inferior to the new one. All modifications to the environment variables done using the 'set environment' or 'unset environment' commands are also copied to the new inferior. Various new commands have been introduced See the NEWS file for a more complete and detailed list of what this release includes. Mar 20th, 2022: GDB 12 branch created The GDB 12 branch (gdb-12-branch) has been created. To check out a copy of the branch use: git clone --branch gdb-12-branch https://sourceware.org/git/binutils-gdb.git January 16th, 2022: GDB 11.2 Released! The latest version of GDB, version 11.2, is available for download. This is a minor corrective release over GDB 11.1, fixing the following issues: PR sim/28302 (gdb fails to build with glibc 2.34) PR build/28318 (std::thread support configure check does not use CXX_DIALECT) PR gdb/28405 (arm-none-eabi: internal-error: ptid_t remote_target::select_thread_for_ambiguous_stop_reply(const target_waitstatus*): Assertion `first_resumed_thread != nullptr' failed) PR tui/28483 ([gdb/tui] breakpoint creation not displayed) PR build/28555 (uclibc compile failure since commit 4655f8509fd44e6efabefa373650d9982ff37fd6) PR rust/28637 (Rust characters will be encoded using DW_ATE_UTF) PR gdb/28758 (GDB 11 doesn't work correctly on binaries with a SHT_RELR (.relr.dyn) section) PR gdb/28785 (Support SHT_RELR (.relr.dyn) section) See the NEWS file for a more complete and detailed list of what this release includes. September 13th, 2021: GDB 11.1 Released! The latest version of GDB, version 11.1, is available for download. This version of GDB includes the following changes and enhancements: Support for ARM Symbian (arm*-*-symbianelf*) has been removed. Building GDB now requires GMP (The GNU Multiple Precision Arithmetic Library). New command-line options "--early-init-command" (or "-eix") and "--early-init-eval-command" (or "-eiex") GDB/MI Changes: New --qualified option for the '-break-insert' and '-dprintf-insert' commands. New --force-condition option for the '-break-insert' and '-dprintf-insert' commands. New --force option for the '-break-condition' command. The '-file-list-exec-source-files' now accepts an optional regular expression to filter the source files included in the result. The results from '-file-list-exec-source-files' now include a 'debug-fully-read' field to indicate if the corresponding source's debugging information has been partially read (false) or has been fully read (true). TUI Improvements: Mouse actions are now supported. The mouse wheel scrolls the appropriate window. Key combinations that do not have a specific action on the focused window are now passed to GDB. Python enhancements: Inferior objects now contain a read-only 'connection_num' attribute that gives the connection number as seen in 'info connections' and 'info inferiors'. New method gdb.Frame.level() which returns the stack level of the frame object. New method gdb.PendingFrame.level() which returns the stack level of the frame object. When hitting a catchpoint, the Python API will now emit a gdb.BreakpointEvent rather than a gdb.StopEvent. The gdb.Breakpoint attached to the event will have type BP_CATCHPOINT. Python TUI windows can now receive mouse click events. If the Window object implements the click method, it is called for each mouse click event in this window. New setting "python ignore-environment on|off"; if "on", causes GDB's builtin Python to ignore any environment variable that would otherwise affect how Python behaves (needs to be set during "early initialization" (see above). New setting "python dont-write-bytecode auto|on|off". Guile API enhancements: Improved support for rvalue reference values. New procedures for obtaining value variants: value-reference-value, value-rvalue-reference-value and value-const-value. New "qMemTags" and "QMemTags" remote protocol packets (associated with Memory Tagging). GDB will now look for the .gdbinit file in a config directory before looking for ~/.gdbinit. The file is searched for in the following locations: $XDG_CONFIG_HOME/gdb/gdbinit, $HOME/.config/gdb/gdbinit, $HOME/.gdbinit. On Apple hosts the search order is instead: $HOME/Library/Preferences/gdb/gdbinit, $HOME/.gdbinit. The "break [...] if CONDITION" command no longer returns an error when the condition is invalid at one or more locations. Instead, if the condition is valid at one or more locations, the locations where the condition is not valid are disabled. The behavior of the "condition" command is changed to match the new behavior of the "break" command. Support for general memory tagging functionality (currently limited to AArch64 MTE) Core file debugging now supported for x86_64 Cygwin programs. New "org.gnu.gdb.riscv.vector" feature for RISC-V targets. GDB now supports fixed point types which are described in DWARF as base types with a fixed-point encoding. Additionally, support for the DW_AT_GNU_numerator and DW_AT_GNU_denominator has also been added. Miscellaneous: New "startup-quietly on|off" setting; when "on", behaves the same as passing the "-silent" option on the command line. New "print type hex on|off" setting; when 'on', the 'ptype' command uses hexadecimal notation to print sizes and offsets of struct members. When 'off', decimal notation is used. The "inferior" command, when run without argument, prints information about the current inferior. The "ptype" command now supports "/x" and "/d", affecting the base used to print sizes and offsets. The output of the "info source" has been restructured. New "style version foreground | background | intensity" commands to control the styling of the GDB version number. Various debug and maintenance commands (mostly useful for the GDB developers) See the NEWS file for a more complete and detailed list of what this release includes. @ text @@ 1.1.1.2 log @Import gdb 16.3; previous was 15.1 April 20th, 2025: GDB 16.3 Released! The latest version of GDB, version 16.3, is available for download. This is a corrective release over GDB 16.2, fixing the following issues: PR symtab/32309 ([gdb/symtab, fission] gdb/dwarf2/read.h:289: internal-error: version: Assertion `m_dwarf_version != 0' failed) PR corefiles/32441 (gdb segfaults when generating a core file if target_fileio_read_alloc fails) PR tui/32623 (TUI console window doesn't update while inferior is running) PR corefiles/32634 ([gdb/corefiles] segfault in gdb.arch/i386-biarch-core.exp) PR backtrace/32757 ("Assertion `stashed' failed" when inline frame #0 is duplicated) PR tdep/32770 ([gdb/tdep, i386] FAIL: gdb.reverse/recvmsg-reverse.exp: continue to breakpoint: marker2) PR gdb/32775 ([AArch64] gdbserver crashes on SVE/SME-enabled systems) PR record/32784 ([gdb/record, aarch64] Stack smashing detected in aarch64_record_asimd_load_store) PR tui/32797 (Escape sequences to only reset foreground or background color to default fail) PR gdb/32828 (gstack regression: missing file names and line numbers) See the NEWS file for a more complete and detailed list of what this release includes. February 1st, 2025: GDB 16.2 Released! The latest version of GDB, version 16.2, is available for download. This is a corrective release over GDB 16.1, fixing the following issues: PR build/32578 (cannot build GDB 16.1 out of tree when calling the configure script with a relative path) PR tui/32592 ([gdb/tui] internal error in tui-winsource.c:340:refresh_window) PR remote/32593 (Incompatibilities between GDB's and LLDB's 'x' packet implementation) PR build/32610 (Missing #include file in darwin_nat.c) See the NEWS file for a more complete and detailed list of what this release includes. January 18th, 2025: GDB 16.1 Released! The latest version of GDB, version 16.1, is available for download. This version of GDB includes the following changes and enhancements: record/replay support now available on loongarch*-linux* GDB now supports watchpoints for tagged data pointers. MTE (Memory Tagging Extension) debugging is now supported on AArch64 baremetal. New bash script gstack uses GDB to print stack traces of running processes. Enhanced breakpoint support For breakpoints that are created in the 'pending' state, any 'thread' or 'task' keywords are parsed at the time the breakpoint is created, rather than at the time the breakpoint becomes non-pending. Thread-specific breakpoints are only inserted into the program space in which the thread of interest is running. Enhanced Intel Processor Trace support Support for printing of asynchronous events Support for printing of ptwrite payloads Changed commands The "remove-symbol-file -a ADDRESS" command now accepts a full expression as the ADDRESS. The "show configuration" command now prints the version of GNU readline that GDB is using. The "maintenance print remote-registers" now provides an "Expedited" column indicating which registers were included in the last stop reply packet received by GDB. Various command taking filenames as argument now require file names to be quoted if the argument contains white spaces or quote characters. Python API changes New module gdb.missing_objfile that facilitates dealing with missing objfiles when opening a core-file. GDB commands to query, enable and disable handlers created using this API have also been added. New event gdb.tui_enabled. Added the gdb.Symbol.is_artificial attribute. New gdb.record.clear function to clear the trace data of the current recording. The 'signed' argument to gdb.Architecture.integer_type() will no longer accept non-bool types. The gdb.MICommand.installed property can only be set to True or False. The 'qualified' argument to gdb.Breakpoint constructor will no longer accept non-bool types. Debugger Adapter Protocol changes The "scopes" request will now return a scope holding global variables from the stack frame's compilation unit. The "scopes" request will return a "returnValue" scope holding the return value from the latest "stepOut" command, when appropriate. The "launch" and "attach" requests were rewritten in accordance with some clarifications to the spec. Now they can be sent at any time after the "initialized" event, but will not take effect (or send a response) until after the "configurationDone" request has been sent. The "variables" request will not return artificial symbols. Remote Protocol New remote packet: vFile:stat New remote packet: x addr,length Miscellaneous The Ada 'Object_Size attribute is now supported. Styling now available for line numbers, GDB commands and header lines of lists. It is now possible to turn the warning emitted when specifying a language that does not match the current frame off. For ARM targets, the offset of the pc in the jmp_buf has been fixed to match glibc 2.20 and later. This should only matter when not using libc probes. This may cause breakage when using an incompatible libc, like uclibc or newlib, or an older glibc. Deprecated or removed Support for QNX Neutrino has been removed Support for Nios II targets has been removed Support for Intel MPX has been removed See the NEWS file for a more complete and detailed list of what this release includes. December 29th, 2024: GDB 16 branch created The GDB 16 branch (gdb-16-branch) has been created. To check out a copy of the branch use: git clone --branch gdb-16-branch https://sourceware.org/git/binutils-gdb.git September 29th, 2024: GDB 15.2 Released! The latest version of GDB, version 15.2, is available for download. This is a minor corrective release over GDB 15.1, fixing the following issues: PR gdb/31727 (-exec-next fails in mingw (infrun.c:2794: internal-error: resume_1: Assertion `pc_in_thread_step_range (pc, tp)' failed)) PR c++/31900 (libstdc++-prettyprinters/debug.cc print redirected fails since gdb-14-branchpoint-2123-g4e417d7bb1c) PR python/31946 (sys.exit from Python no longer exits the GDB process) PR record/31971 (Loading a saved record file asserts if we try to execute the inferior) PR gdb/32005 (frv_current_sos doesn't set solib::lm_info) PR exp/32015 (GDB crashes while printing large D array) PR gdb/32025 (Fatal error when the disassemble command is interrupted with SIGINT) PR gdb/32143 ([15 Regression] arch/amd64.c:71: internal-error: amd64_create_target_description: Assertion `!is_x32' failed) PR symtab/32158 ([gdb/symtab] enum class enumerator has incorrect parent in cooked index) PR symtab/32160 ([gdb/symtab] Parent map: die parent or scope parent?) See the NEWS file for a more complete and detailed list of what this release includes. @ text @d329 1 a329 1 ; Test that all (accessible) condition codes are clear @