)]}'
{
  "log": [
    {
      "commit": "a760a797aeb6e9143d60f0b8b2b8f71da88cabcf",
      "tree": "ce402b8221bc383ded5a5bd4d7cbce743c122033",
      "parents": [
        "1686e21559a7812ebbc05f57372cc30880768bf7"
      ],
      "author": {
        "name": "GDB Administrator",
        "email": "gdbadmin@sourceware.org",
        "time": "Fri Aug 14 00:00:07 2026 +0000"
      },
      "committer": {
        "name": "GDB Admin",
        "email": "brobecker@adacore.com",
        "time": "Fri Aug 14 00:00:07 2026 +0000"
      },
      "message": "Automatic date update in version.in\n"
    },
    {
      "commit": "1686e21559a7812ebbc05f57372cc30880768bf7",
      "tree": "a72d705234e67c24e8f37576edc5807558c6a7d1",
      "parents": [
        "015bb5e104ec2bbd7ce7a3b7650431927be0cb38"
      ],
      "author": {
        "name": "Andrew Burgess",
        "email": "aburgess@redhat.com",
        "time": "Tue Jul 21 14:37:45 2026 +0100"
      },
      "committer": {
        "name": "Andrew Burgess",
        "email": "aburgess@redhat.com",
        "time": "Thu Aug 13 12:07:35 2026 +0100"
      },
      "message": "gdb/tui: use init_extended_color where possible\n\nAfter commit:\n\n  commit fbe7f20a0f098ca03913452b29f50f0dc8568f77\n  Date:   Sat May 9 23:27:43 2026 +0200\n\n    gdb/tui: fix unexpected reuse of color pairs\n\nwhich converted GDB to use init_extended_pair where possible, I\nrealised we could also make use of init_extended_color.\n\nThe motivation for using init_extended_color is slightly less than\ninit_extended_pair.  Assuming the terminal supports it the standard\ninit_color API supports up to SHRT_MAX (32767) different colors,\nswitching to init_extended_color removes the SHRT_MAX limit on color\nindices, allowing us to support the full range of COLORS.\n\nBut the cost of making this change is minimal, we already track the\ncolor indices as an `int` within the global COLOR_MAP, so it\u0027s mostly\njust a case of calling init_extended_color where needed.\n\nWe only use init_extended_color when both that function and\ninit_extended_pair is available.  The fallback to init_extended_pair\nis init_pair, which expects the color indices to be shorts.  If we are\nusing the init_pair fallback then using init_extended_color is\npointless.\n\nIn reality init_extended_pair and init_extended_color were both added\nin ncurses 6.1, so should both be available together.\n\nThere is one additional change in here.  Assuming that a terminal does\nsupport more than SHRT_MAX colours, but for some reason GDB is\ncompiled with a version of the curses library that doesn\u0027t support\ninit_extended_color, then it is possible that in `get_color` the value\nof NEXT could end up above SHRT_MAX, in which case the `init_color`\ncall will truncate the value of NEXT to a short and we will end up\nredefining an earlier color index.  To avoid this unlikely case I\u0027ve\nadded a compare against SHRT_MAX.\n\nThe init_extended_color path doesn\u0027t have this risk as COLORS is an\n`int` and NEXT is passed as an `int` on this path so there is no risk\nof truncation.\n\nApproved-By: Simon Marchi \u003csimon.marchi@efficios.com\u003e\nApproved-By: Tom Tromey \u003ctom@tromey.com\u003e\n"
    },
    {
      "commit": "015bb5e104ec2bbd7ce7a3b7650431927be0cb38",
      "tree": "8744d913f610b55b57b1b8897e366e1de3bc77f6",
      "parents": [
        "f33422af6d81c623871f1407e2fce0794e90739a"
      ],
      "author": {
        "name": "Andrew Burgess",
        "email": "aburgess@redhat.com",
        "time": "Tue Aug 11 13:18:02 2026 +0100"
      },
      "committer": {
        "name": "Andrew Burgess",
        "email": "aburgess@redhat.com",
        "time": "Thu Aug 13 10:03:41 2026 +0100"
      },
      "message": "gdb/configure: fix string quoting in AC_MSG_WARN and AC_MSG_ERROR\n\nEli pointed out an issue with --enable-binary-file-formats, when GDB\nis built with --enable-binary-file-formats\u003d\u0027coff,xcoff,elf,macho\u0027 on a\ntarget that doesn\u0027t support Mach-O, then GDB would configure\ncorrectly, but then fail to build with an error like:\n\n     CXXLD  gdb.exe\n     d:/usr/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe:\n             machoread.o: in function `macho_check_dsym\u0027:\n     d:\\gnu\\gdb-18.0.90\\gdb/machoread.c:738:(.text+0xb16):\n             undefined reference to `bfd_mach_o_lookup_command\u0027\n     d:/usr/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe:\n             d:\\gnu\\gdb-18.0.90\\gdb/machoread.c:757:(.text+0xbe6):\n                     undefined reference to `bfd_mach_o_lookup_command\u0027\n     collect2.exe: error: ld returned 1 exit status\n\nSee the original report here:\n\n  https://inbox.sourceware.org/gdb-patches/865x1j1z61.fsf@gnu.org\n\nIt turns out the problem was incorrect quoting in an AC_MSG_ERROR call\nwithin the configure script.  The current code is structured like\nthis:\n\n  if CONDITION_1; then\n    AC_MSG_ERROR(\"some message, some more message\")\n  elif CONDITION_2; then\n    AC_MSG_ERROR(\"some message, some more message\")\n  fi\n\nAs \"...\" is not recognized as quoting by m4, the comma inside is\ninterpreted as an m4 argument separator, so \u0027some more message\"\u0027\nincluding the trailing quote becomes the exit status and \u0027\"some\nmessage\u0027 becomes the error message.\n\nConfigure understands to quote the \u0027\"\u0027 in the error message, but the\n\u0027\"\u0027 in the exit status is not quoted, which leaves an unbalanced quote\nin the configure script.\n\nLuckily the second AC_MSG_ERROR line also has the same problem, which\nadds a second unbalanced \u0027\"\u0027 into the configure script, which closes\nthe string started by the first unbalanced quote.\n\nThe string formed by these two unbalanced quotes just happens to\ninclude the entire CONDITION_2 `if` check.\n\nFix this by replacing the use of \u0027\"...\"\u0027 with \u0027[...]\u0027 instead.\n\nThis issue was introduced in commit:\n\n  commit 809c1abc19d487daeed75842da867ce633159210\n  Date:   Wed Aug 21 11:10:50 2024 -0300\n\n    gdb, configure: Add enable-binary-file-format option for configure\n\nAs well as the two AC_MSG_ERROR calls the above commit introduced an\nincorrectly quoted AC_MSG_WARN call, I\u0027ve fixed that too.\n\nThe above commit also added an unnecessary \u0027;\u0027 at the end of the two\nAC_MSG_ERROR lines, I\u0027ve removed them in this commit.\n\nWhile reviewing the above commit I spotted a couple of issues with the\nerror messages themselves.  First \u0027elf\u0027 should be \u0027ELF\u0027 when talking\nabout the file format, so I fixed that.  And second, AC_MSG_ERROR\ncalls normally don\u0027t have a trailing period, so I removed these from\nthe error messages added by 809c1abc19d487da.\n\nNow when configuring with\n--enable-binary-file-formats\u003d\u0027coff,xcoff,elf,macho\u0027 on a target that\ndoesn\u0027t support Mach-O, e.g. GNU/Linux, the configure will stop like\nthis:\n\n  checking for ELF support in BFD... yes\n  checking for library containing dlopen... (cached) none required\n  checking for Mach-O support in BFD... no\n  configure: error: Mach-O support was requested, but BFD does not support it\n  make: *** [Makefile:13461: configure-gdb] Error 1\n\nFinally, during a final review of this patch I spotted another place\nin our configure script where we were not quoting the argument to\nAC_MSG_WARN correctly.  In this case the error was added in commit\ne76c5d173bbf7137.  The problem line is:\n\n  AC_MSG_WARN(disabling guile support, $GUILD fails compiling for $host)\n\nAs AC_MSG_WARN expects only a single argument, everything after the\ncomma will be discarded.  Quote the string with \u0027[...]\u0027 to ensure the\nfull string is printed.\n\nApproved-By: Tom Tromey \u003ctom@tromey.com\u003e\n"
    },
    {
      "commit": "f33422af6d81c623871f1407e2fce0794e90739a",
      "tree": "8f26480f619a64d10cbd9e2813f75d77610e762c",
      "parents": [
        "dbf19e0f878eb592011c25c1dbbfc35eee330ec2"
      ],
      "author": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Thu Aug 13 05:23:09 2026 +0200"
      },
      "committer": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Thu Aug 13 05:23:09 2026 +0200"
      },
      "message": "[gdb/build] Fix cli/cli-style.c build error with C++20\n\nPR build/34514 reports for a C++20 build:\n...\ncli/cli-style.c:457:37: error: conversion from ‘const char8_t [8]’ to \\\n  non-scalar type ‘std::string’ {aka ‘std::__cxx11::basic_string\u003cchar\u003e’} \\\n  requested\n  457 | static std::string warning_prefix \u003d u8\"\\u26A0\\uFE0F \";\n      |                                     ^~~~~~~~~~~~~~~~~\n...\n\nThe u8 literal is char[] until C++20, but char8_t[] since C++20.\n\nFix this by using a reinterpret_cast\u003cconst char *\u003e.\n\nTested by rebuilding using GCC 15.3.0, with and without -std\u003dc++20.\n\nApproved-By: Simon Marchi \u003csimon.marchi@efficios.com\u003e\n\nBug: https://sourceware.org/bugzilla/show_bug.cgi?id\u003d34514\n"
    },
    {
      "commit": "dbf19e0f878eb592011c25c1dbbfc35eee330ec2",
      "tree": "a0c97e26174219a701b0f2fd7c5adce465680c06",
      "parents": [
        "28fe282aac536b210aa7476c0f07bb073df831f2"
      ],
      "author": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Thu Aug 13 03:59:17 2026 +0200"
      },
      "committer": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Thu Aug 13 03:59:17 2026 +0200"
      },
      "message": "[gdb/cli] Don\u0027t emit emojis in MI\n\nPR mi/34501 reports the following:\n...\n$ gdb -q \\\n    -ex \u0027set charset UTF-8\u0027 \\\n    -ex \u0027interpreter-exec mi2 \"-break-insert -f foo\u0027 \\\n    -ex quit\n\u0026\"�\\235\\214�\\217 No symbol table is loaded.  Use the \\\"file\\\" command.\\n\"\n  ...\n$\n...\n\nThe output is a bit odd, but that gets better if we use\n\u0027set print sevenbit-strings on\u0027:\n...\n\u0026\"\\342\\235\\214\\357\\270\\217 No symbol table is loaded.  Use the \\\"file\\\" command.\\n\"\n...\n\nThe output we see there is the error emoji:\n...\n$ gdb\n(gdb) b foo\n❌️ No symbol table is loaded.  Use the \"file\" command.\n...\n\nMore specifically, two utf-8 encoded unicode characters:\n- Cross Mark [1]: 0xE2 0x9D 0x8C\n- Variation Selector-16 (VS16) [2]: 0xEF 0xB8 0x8F\n\nNow the question: is GDB doing something wrong?\n\nI think we probably should encode unicode characters in MI error strings as\noctal escapes, independent of the sevenbit-strings setting.  This patch does\nnot address this part.\n\nThen there\u0027s the question whether we should emit emojis in MI error strings in\nthe first place [3].  In principle they\u0027re unicode characters encoded in UTF-8,\nand we can expect other such unicode characters in translated error strings.\n\nBut, given that MI has can_emit_style_escape () \u003d\u003d false, and already filters\nout ANSI escape sequences, I think it\u0027s reasonable to also disable emojis.\n\nAs for implementation, I introduced a function emoji_allowed alongside\ncan_emit_style_escape, which defaults to the value of can_emit_style_escape.\n\nTested on x86_64-linux.\n\nApproved-By: Tom Tromey \u003ctom@tromey.com\u003e\n\nBug: https://sourceware.org/bugzilla/show_bug.cgi?id\u003d34501\n\n[1] https://www.compart.com/en/unicode/U+274C\n[2] https://www.compart.com/en/unicode/U+FE0F\n[3] https://sourceware.org/bugzilla/show_bug.cgi?id\u003d33920#c1\n"
    },
    {
      "commit": "28fe282aac536b210aa7476c0f07bb073df831f2",
      "tree": "b7301d250b349ab50b74e4fa3861ab3987596100",
      "parents": [
        "cf94c9060702ecd052d3972e3b138e11d7b2bc2d"
      ],
      "author": {
        "name": "GDB Administrator",
        "email": "gdbadmin@sourceware.org",
        "time": "Thu Aug 13 00:00:08 2026 +0000"
      },
      "committer": {
        "name": "GDB Admin",
        "email": "brobecker@adacore.com",
        "time": "Thu Aug 13 00:00:08 2026 +0000"
      },
      "message": "Automatic date update in version.in\n"
    },
    {
      "commit": "cf94c9060702ecd052d3972e3b138e11d7b2bc2d",
      "tree": "14c4a6e607b810c9c2673f9a3a5463ff981e61ff",
      "parents": [
        "bbe4c6cf3d39c3370f9a1a57fbb862d330241c27"
      ],
      "author": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Wed Aug 12 23:18:20 2026 +0200"
      },
      "committer": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Wed Aug 12 23:18:20 2026 +0200"
      },
      "message": "[gdb] Rewrite error and warning emojis\n\nWhile working on PR34501 I realized that these two strings actually contain\ntwo unicode characters:\n...\nstatic std::string warning_prefix \u003d \"⚠️ \";\nstatic std::string error_prefix \u003d \"❌️ \";\n...\n\nBoth the Warning Sign [1] and the Cross Mark [2] are followed by Variation\nSelector-16 (VS16) [3].\n\nTo make this obvious, I decided to rewrite in a style that makes it explicit\nboth which unicode characters are used, and how they are encoded:\n...\nstatic std::string warning_prefix \u003d u8\"\\u26A0\\uFE0F \";\n...\n\nIn the process I found out that the Cross Mark doesn\u0027t need VS16, because its\ndefault presentation is already \"Emoji\" rather than \"Text\", so that one simply\nbecomes:\n...\nstatic std::string error_prefix \u003d u8\"\\u274C \";\n...\n\nAFAICT, this property (default presentation \u003d\u003d \"Emoji\") can be verified by\nfinding Cross Mark here [4] and checking that property Emoji_Presentation\napplies.\n\nTested on x86_64-linux.\n\nApproved-By: Tom Tromey \u003ctom@tromey.com\u003e\n\n[1] https://www.compart.com/en/unicode/U+26A0\n[2] https://www.compart.com/en/unicode/U+274C\n[3] https://www.compart.com/en/unicode/U+FE0F\n[4] https://www.unicode.org/Public/17.0.0/ucd/emoji/emoji-data.txt\n"
    },
    {
      "commit": "bbe4c6cf3d39c3370f9a1a57fbb862d330241c27",
      "tree": "ccf0ada4f3648c5c9ebc4b5217a1dc145682a0a8",
      "parents": [
        "25f1035f403c929a38d822f0525ec1bb180fffb5"
      ],
      "author": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Wed Aug 12 23:16:25 2026 +0200"
      },
      "committer": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Wed Aug 12 23:16:25 2026 +0200"
      },
      "message": "[gdb/testsuite] Fix gdb.python/py-mi-cmd.exp\n\nOn Fedora Rawhide aarch64-linux (using Python 3.15.0b4), with test-case\ngdb.python/py-mi-cmd.exp I ran into:\n...\nExpecting: ^(-pycmd bk3[^M\n]+)?(\u0026\"TypeError.*: __repr__ returned non-string \\(type BadKey\\)..\"^M\n\\^error,msg\u003d\"Error occurred in Python: __repr__ returned non-string \\(type BadKey\\)\"[^M\n]+[(]gdb[)] ^M\n[ ]*)\n-pycmd bk3^M\n\u0026\"TypeError: ReallyBadKey.__repr__() must return a str, not BadKey\\n\"^M\n^error,msg\u003d\"Error occurred in Python: ReallyBadKey.__repr__() must return a str, not BadKey\"^M\n(gdb) ^M\nFAIL: $exp: -pycmd bk3 (unexpected output)\n...\n\nFix this by updating the regexp.\n\nTested with aarch64-linux (Python 3.15.0b4) and x86_64-linux (Python 3.13.14).\n\nApproved-By: Tom Tromey \u003ctom@tromey.com\u003e\n"
    },
    {
      "commit": "25f1035f403c929a38d822f0525ec1bb180fffb5",
      "tree": "608cff77f5fa0e6f7b1ae2036b6e777c4d84022d",
      "parents": [
        "3698409f0bc413c7e1452ec6b5867f25eb96451c"
      ],
      "author": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Wed Aug 12 23:11:46 2026 +0200"
      },
      "committer": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Wed Aug 12 23:11:46 2026 +0200"
      },
      "message": "[gdb/python] Handle error in gdbpy_initialize_gdb_readline\n\nOn Fedora Rawhide aarch64-linux, with test-case gdb.python/py-failed-init.exp\nI ran into:\n...\nbuiltin_spawn $build/gdb/gdb -nw -nx -q -iex set height 0 -iex set width 0 \\\n  -data-directory $build/gdb/data-directory -iex set interactive-mode on\nWARN: Could not find the standard library directory! The Python \u0027home\u0027 \\\n  directory was set to \u0027foo\u0027, is this correct?\nError occurred computing Python error message.\n$build/gdb/gdb: warning:\nCould not load the Python gdb module from `$build/gdb/data-directory/python\u0027.\nLimited Python support is available from the _gdb module.\nSuggest passing --data-directory\u003d/path/to/gdb/data-directory.\n(gdb) set height 0\n(gdb) set width 0\n(gdb) dir\nReinitialize source path to empty? (y or n) y\nSource directories searched: $cdir:$cwd\n(gdb) dir $src/gdb/testsuite/gdb.python\nSource directories searched: $src/gdb/testsuite/gdb.python:$cdir:$cwd\n(gdb) python print (1)\n1\n(gdb) FAIL: $exp: gdb-command\u003cpython print (1)\u003e\nquit\nException ignored on threading shutdown:\nTraceback (most recent call last):\n  File \"\u003cstring\u003e\", line 2, in \u003cmodule\u003e\nModuleNotFoundError: No module named \u0027importlib\u0027\nPASS: $exp: quit\n...\n\nThe test-case tries to break python:\n...\nsave_vars { env(PYTHONHOME) } {\n    setenv PYTHONHOME foo\n    clean_restart\n}\n...\nenough to get it to this point:\n...\ngdb_test \"python print (1)\" \\\n    \"Python not initialized\"\n...\nbut apparently, that doesn\u0027t work anymore in this python version:\n...\n$ python --version\nPython 3.15.0b4\n...\n\nThe test-case needs updating, and I\u0027ve submitted a testsuite patch [1] for\nthat.\n\nThe next question is why we\u0027re seeing a ModuleNotFoundError on quit.\n\nI investigated this, and found that it originates from\ngdbpy_initialize_gdb_readline, where we do:\n...\n   if (eval_python_command (code, Py_file_input) \u003d\u003d 0)\n    PyOS_ReadlineFunctionPointer \u003d gdbpy_readline_wrapper;\n...\nbut don\u0027t report and reset the python error state, so instead the error is\nreported by Py_Finalize.\n\nFix this by:\n- making sure that the error is reported immediately, though in the form of a\n  warning rather than an error, and\n- disabling the python-interactive command if gdbpy_initialize_gdb_readline\n  fails, to avoid broken readline behavior in a python-interactive session.\n\nAlso make the test-case a bit stricter by checking that there\u0027s no output when\nquitting.\n\nTested on aarch64-linux.\n\nApproved-By: Tom Tromey \u003ctom@tromey.com\u003e\n\nChanges in v2:\n- use gdbpy_print_stack instead of PyErr_Print/PyErr_Clear\n- Fix error/warning message by ensure that command name is double-quoted and\n  displayed using command_style\n\nVersions:\n- v1 https://sourceware.org/pipermail/gdb-patches/2026-August/229261.html\n\nBug: https://sourceware.org/bugzilla/show_bug.cgi?id\u003d34485\n\n[1] https://sourceware.org/pipermail/gdb-patches/2026-August/229193.html\n"
    },
    {
      "commit": "3698409f0bc413c7e1452ec6b5867f25eb96451c",
      "tree": "e21c30d9d16d52c1f8c5066d0f2c7e5e67160291",
      "parents": [
        "4c24ffb53cd359a329e264b4c8f47c3bf1f2b094"
      ],
      "author": {
        "name": "Tom Tromey",
        "email": "tromey@adacore.com",
        "time": "Wed Jul 01 12:48:49 2026 -0600"
      },
      "committer": {
        "name": "Tom Tromey",
        "email": "tromey@adacore.com",
        "time": "Wed Aug 12 13:18:05 2026 -0600"
      },
      "message": "Use F_SETFL after F_SETOWN\n\nThis changes enable_async_notification to use F_SETFL after F_SETOWN.\nThis order more correct because it ensures that the owning process is\nset before the request to enable SIGIO.\n\nApproved-By: Simon Marchi \u003csimon.marchi@efficios.com\u003e\n"
    },
    {
      "commit": "4c24ffb53cd359a329e264b4c8f47c3bf1f2b094",
      "tree": "a64f389aa245276021eff4369ad856c50a771663",
      "parents": [
        "ce67ec902d836898d93c62f71ff2e97f774a0b95"
      ],
      "author": {
        "name": "Tom Tromey",
        "email": "tromey@adacore.com",
        "time": "Wed Jul 01 12:39:31 2026 -0600"
      },
      "committer": {
        "name": "Tom Tromey",
        "email": "tromey@adacore.com",
        "time": "Wed Aug 12 13:18:00 2026 -0600"
      },
      "message": "Don\u0027t use F_SETFL in gdbreplay\n\nThere\u0027s no need to call fcntl with F_SETFL in gdbreplay, as gdbreplay\ndoes not use or need SIGIO.\n\nApproved-By: Simon Marchi \u003csimon.marchi@efficios.com\u003e\n"
    },
    {
      "commit": "ce67ec902d836898d93c62f71ff2e97f774a0b95",
      "tree": "24897180e13935c4f278f94824ac017874515b39",
      "parents": [
        "87027fd2372d79a3f44605efdeba8a4d7c41093a"
      ],
      "author": {
        "name": "Jens Remus",
        "email": "jremus@linux.ibm.com",
        "time": "Wed Aug 12 14:39:50 2026 +0200"
      },
      "committer": {
        "name": "Jens Remus",
        "email": "jremus@linux.ibm.com",
        "time": "Wed Aug 12 14:39:50 2026 +0200"
      },
      "message": "gas: sframe: Add test for signal frame with unsupported CFI\n\nUsually if the generation of SFrame from CFI directives encounters\nunsupported CFI the generation of SFrame FDE is skipped.  For signal\nframes (.cfi_signal_frame) an \"empty\" FDE without any FREs is generated\ninstead.\n\nThis adds a test for the issue fixed with commit fa11363bc9ad (\"Ensure\nthat sframe_xlate_ctx_cleanup() doe snot leave any dangling pointers\").\n\ngas/testsuite/\n\t* gas/cfi-sframe/cfi-sframe.exp (cfi-sframe-common-14): Run\n\tnew common test.\n\t* gas/cfi-sframe/cfi-sframe-common-14.d: New common test for\n\tsignal frame with unsupported CFI.\n\tgas/cfi-sframe/cfi-sframe-common-14.s: Likewise.\n\nSigned-off-by: Jens Remus \u003cjremus@linux.ibm.com\u003e\n"
    },
    {
      "commit": "87027fd2372d79a3f44605efdeba8a4d7c41093a",
      "tree": "a7f504088a36ee776537d3aa952f43acc4897c6f",
      "parents": [
        "17afc47d8bc304f527eb58ea8086a39fdc0cbd19"
      ],
      "author": {
        "name": "Jens Remus",
        "email": "jremus@linux.ibm.com",
        "time": "Wed Aug 12 14:39:50 2026 +0200"
      },
      "committer": {
        "name": "Jens Remus",
        "email": "jremus@linux.ibm.com",
        "time": "Wed Aug 12 14:39:50 2026 +0200"
      },
      "message": "gas: sframe: Fix non-SP/FP CFA base register if flexible FDE\n\n.cfi_def_cfa_offset modifies the current CFA rule to use the provided\noffset but keep the current CFA base register.  It therefore requires\na CFA base register to be in effect.  Relax the check to simply test\nfor whether a CFA base register is in effect instead of restricting\nit to SP/FP.  The latter is checked when the CFA base register is\nmodified.\n\nThis enables .cfi_def_cfa_offset with non-SP/FP CFA base register for\ntargets that support SFrame flexible FDE.\n\nWhile at it simplify the logic to test for error cases first.\n\ngas/\n\t* gen-sframe.c (sframe_xlate_do_def_cfa_offset): Allow non-SP/FP\n\tCFA base register if flexible FDE.\n\nSigned-off-by: Jens Remus \u003cjremus@linux.ibm.com\u003e\n"
    },
    {
      "commit": "17afc47d8bc304f527eb58ea8086a39fdc0cbd19",
      "tree": "33faa79e4e1bebe07d304b6f0f54389da0d8fc68",
      "parents": [
        "4e8ba93fdb24f9bcf31f706e62e67c57ae91168f"
      ],
      "author": {
        "name": "Evgeny Karpov",
        "email": "evgeny.karpov@arm.com",
        "time": "Fri Aug 07 16:37:11 2026 +0200"
      },
      "committer": {
        "name": "Alice Carlotti",
        "email": "alice.carlotti@arm.com",
        "time": "Wed Aug 12 11:08:21 2026 +0100"
      },
      "message": "aarch64: Implement Structured Exception Handling (SEH) on AArch64\n\nThe patch reuses shared helpers for SEH and implements SEH on AArch64.\nThe implementation is based on\n(https://learn.microsoft.com/en-us/cpp/build/arm64-exception-handling?view\u003dmsvc-170)\nand pdata/xdata SEH records are emitted from md_finish.\n\nWhen .pdata/.xdata is emitted, the function size is required.\nFunction sizes are calculated as late as possible, and the code segment needs\nto be relaxed to be able to calculate the function sizes.\n\nInitially, obj_coff_generate_pdata was called in write_object_file.\nBefore the change, obj_coff_generate_pdata was used only to validate\nsyntax, which was sufficient for that purpose. However, that location\nseems incorrect, as it is too late to emit .pdata/.xdata records\nin the AArch64 case.\n\nmd_finish has been declared for AArch64 and extended with\nseh_aarch64_write_data to emit .pdata/.xdata records after all\nassembly has been completed.\n\nSigned-off-by: Evgeny Karpov \u003cevgeny@kmaps.co\u003e\n\ngas/ChangeLog:\n\t* gas/config/obj-coff-seh-shared.c (defined): Update.\n\t(struct seh_seg_list): Use seh_context_t.\n\t* gas/config/obj-coff.c (defined): Update.\n\t* gas/config/tc-aarch64.c (defined): Add OBJ_COFF guard.\n\t(aarch64_md_finish): Add.\n\t* gas/config/tc-aarch64.h (defined): Add OBJ_COFF guard.\n\t(md_finish): Add.\n\t(aarch64_md_finish): Add.\n\t(seh_aarch64_write_data): Add.\n\t* testsuite/gas/pe/pe.exp: Add SEH tests.\n\t* write.c: Update.\n\t* write.h (subsegs_finish_section): Update.\n\t* config/obj-coff-seh-aarch64.c: New file.\n\t* config/obj-coff-seh-aarch64.h: New file.\n\t* testsuite/gas/pe/seh-aarch64-error.l: New test.\n\t* testsuite/gas/pe/seh-aarch64-error.s: New test.\n\t* testsuite/gas/pe/seh-aarch64-large-func.d: New test.\n\t* testsuite/gas/pe/seh-aarch64-large-func.s: New test.\n\t* testsuite/gas/pe/seh-aarch64.d: New test.\n\t* testsuite/gas/pe/seh-aarch64.s: New test.\n"
    },
    {
      "commit": "4e8ba93fdb24f9bcf31f706e62e67c57ae91168f",
      "tree": "9a4a592a1bbc28d1df6ad22c0b646121bec5b703",
      "parents": [
        "54cd4e02f733a231f2b63341320408c89eab7e6f"
      ],
      "author": {
        "name": "juewang",
        "email": "juewang@linux.alibaba.com",
        "time": "Fri Jul 24 09:26:42 2026 +0800"
      },
      "committer": {
        "name": "Jiawei",
        "email": "jiawei@iscas.ac.cn",
        "time": "Wed Aug 12 10:40:31 2026 +0800"
      },
      "message": "RISC-V: define elf_backend_dtrel_excludes_plt\n\nThe RISC-V port never defined elf_backend_dtrel_excludes_plt, unlike\nx86-64, AArch64, arm, ppc, mips and s390.  As a result DT_RELASZ counted\n.rela.dyn + .rela.plt instead of just .rela.dyn.\n\nWith an empty .rela.dyn this makes DT_RELA alias DT_JMPREL (DT_RELA \u003d\u003d\nDT_JMPREL, DT_RELASZ \u003d\u003d DT_PLTRELSZ).  glibc accepts the aliased range,\nbut tools that read the two ranges independently, such as llvm-bolt, then\nprocess .rela.plt twice.\n\nDefine the macro so DT_RELASZ excludes .rela.plt, matching every other\ntarget.  When .rela.dyn is empty DT_RELA is now zeroed and the aliasing\nis gone.\n\n\t* elfnn-riscv.c (elf_backend_dtrel_excludes_plt): Define.\n\nSigned-off-by: wangjue.wangjue \u003cwangjue.wangjue@alibaba-inc.com\u003e\n"
    },
    {
      "commit": "54cd4e02f733a231f2b63341320408c89eab7e6f",
      "tree": "b7cda0216caeabad37597d479e41a1f08d2464ce",
      "parents": [
        "8e6c4f526a68b796b7bd71d53e4dc459ac56c3ef"
      ],
      "author": {
        "name": "GDB Administrator",
        "email": "gdbadmin@sourceware.org",
        "time": "Wed Aug 12 00:00:07 2026 +0000"
      },
      "committer": {
        "name": "GDB Admin",
        "email": "brobecker@adacore.com",
        "time": "Wed Aug 12 00:00:07 2026 +0000"
      },
      "message": "Automatic date update in version.in\n"
    },
    {
      "commit": "8e6c4f526a68b796b7bd71d53e4dc459ac56c3ef",
      "tree": "f16a7fab788aec4041bc0f61ddc487df9898e1ae",
      "parents": [
        "39e5f9a1124a85c8298540ac107e9ff809996cbe"
      ],
      "author": {
        "name": "Alan Modra",
        "email": "amodra@gmail.com",
        "time": "Mon Aug 10 17:45:00 2026 +0930"
      },
      "committer": {
        "name": "Alan Modra",
        "email": "amodra@gmail.com",
        "time": "Tue Aug 11 09:33:11 2026 +0930"
      },
      "message": "arm: uninitialised exp.X_op\n\n\t* config/tc-arm.c (my_get_expression): Move initialisation of\n\texpression before first return from function.\n"
    },
    {
      "commit": "39e5f9a1124a85c8298540ac107e9ff809996cbe",
      "tree": "4c03a1f4f17370de02b4b5e90c3889b399c412a7",
      "parents": [
        "a80fede20bc1330eca5e419392c6595bb3a6ac1d"
      ],
      "author": {
        "name": "GDB Administrator",
        "email": "gdbadmin@sourceware.org",
        "time": "Tue Aug 11 00:00:07 2026 +0000"
      },
      "committer": {
        "name": "GDB Admin",
        "email": "brobecker@adacore.com",
        "time": "Tue Aug 11 00:00:07 2026 +0000"
      },
      "message": "Automatic date update in version.in\n"
    },
    {
      "commit": "a80fede20bc1330eca5e419392c6595bb3a6ac1d",
      "tree": "04ca4806c53701b4ff53c5d1d9bdd82de8054e10",
      "parents": [
        "917f64434412ccb5db64b6180ff8ae4a81ec34a9"
      ],
      "author": {
        "name": "Shahab Vahedi",
        "email": "shahab.vahedi@amd.com",
        "time": "Fri Aug 07 18:12:38 2026 +0200"
      },
      "committer": {
        "name": "Shahab Vahedi",
        "email": "shahab.vahedi@amd.com",
        "time": "Mon Aug 10 10:29:13 2026 +0200"
      },
      "message": "gdb.rocm/watchpoint-basic: add gfx1103 to XFAILs\n\nAgain, a confirmed KFD issue.  By confirmed, I mean that if a dummy\ndispatch is done first, then everything goes OK.\n\n  __global__ void dummy () {}\n\n  int main (...)\n  {\n    ...\n    dummy\u003c\u003c\u003c1, 1\u003e\u003e\u003e ();\n    /* Break after malloc.  */\n    kernel\u003c\u003c\u003c1, 1\u003e\u003e\u003e (global_ptr1, global_ptr2);\n    ...\n  }\n\nApproved-By: Simon Marchi \u003csimon.marchi@efficios.com\u003e\n"
    },
    {
      "commit": "917f64434412ccb5db64b6180ff8ae4a81ec34a9",
      "tree": "89db978d1d832c17e3bd81f2e4a1dbb4149823ff",
      "parents": [
        "2af4bdb8e0f6dd4c20b593f7c0e72c7b7da98ca3"
      ],
      "author": {
        "name": "GDB Administrator",
        "email": "gdbadmin@sourceware.org",
        "time": "Mon Aug 10 00:00:09 2026 +0000"
      },
      "committer": {
        "name": "GDB Admin",
        "email": "brobecker@adacore.com",
        "time": "Mon Aug 10 00:00:09 2026 +0000"
      },
      "message": "Automatic date update in version.in\n"
    },
    {
      "commit": "2af4bdb8e0f6dd4c20b593f7c0e72c7b7da98ca3",
      "tree": "8cb395ecbca461f6a7e21334d4fa0440d746078d",
      "parents": [
        "b7f5758529acb1a34dbe025cd3cc593d625e1538"
      ],
      "author": {
        "name": "GDB Administrator",
        "email": "gdbadmin@sourceware.org",
        "time": "Sun Aug 09 00:00:08 2026 +0000"
      },
      "committer": {
        "name": "GDB Admin",
        "email": "brobecker@adacore.com",
        "time": "Sun Aug 09 00:00:08 2026 +0000"
      },
      "message": "Automatic date update in version.in\n"
    },
    {
      "commit": "b7f5758529acb1a34dbe025cd3cc593d625e1538",
      "tree": "6ac7fccff013d0f2aa879ebcbe2b3ec1f2783d29",
      "parents": [
        "c7c7858871f77bb265bbce492d39716f39e0d462"
      ],
      "author": {
        "name": "GDB Administrator",
        "email": "gdbadmin@sourceware.org",
        "time": "Sat Aug 08 00:00:08 2026 +0000"
      },
      "committer": {
        "name": "GDB Admin",
        "email": "brobecker@adacore.com",
        "time": "Sat Aug 08 00:00:08 2026 +0000"
      },
      "message": "Automatic date update in version.in\n"
    },
    {
      "commit": "c7c7858871f77bb265bbce492d39716f39e0d462",
      "tree": "c4044c727562f5272708271e8b7b19b5c1fe4d11",
      "parents": [
        "fcf80ac34ba6d06ca45407869837187e4f900a4a"
      ],
      "author": {
        "name": "Tom Tromey",
        "email": "tom@tromey.com",
        "time": "Fri May 15 11:42:08 2026 -0600"
      },
      "committer": {
        "name": "Tom Tromey",
        "email": "tom@tromey.com",
        "time": "Fri Aug 07 15:18:33 2026 -0600"
      },
      "message": "Convert py-tui.c to the \"python safety\" approach\n\nThis patch mostly converts py-tui.c to use the new Python safety code.\n\nIn particular:\n\n* All methods of gdb.TuiWindow are now implemented as straightforward\n  methods of gdbpy_tui_window.\n\n* gdbpy_register_tui_window is converted and simply returns \u0027void\u0027.\n\nI converted this particular file because it was relatively\nstraightforward, while also demonstrating most of the features of the\nnew approach.  For example, explicit result checks aren\u0027t needed,\ntry/catch can be removed, and the methods are now written in a natural\nstyle.\n\nNote that more conversion remains to be done here:\n\n* gdbpy_tui_enabled hasn\u0027t been converted and still does explicit\n  checks.\n\n* There\u0027s one explicit check in gdbpy_tui_window::set_title.  Fully\n  implementing the safety approach means that some low-level things\n  should eventually be converted to throw; but some work has to be\n  deferred until a lot of the work is complete.\n\nAcked-By: Tom de Vries \u003ctdevries@suse.de\u003e\n"
    },
    {
      "commit": "fcf80ac34ba6d06ca45407869837187e4f900a4a",
      "tree": "ee5024fe3f08e9403488f971d2a9465dbb976374",
      "parents": [
        "bdd07fae21bf92a40dc599da8e5aad751713c67f"
      ],
      "author": {
        "name": "Tom Tromey",
        "email": "tom@tromey.com",
        "time": "Sun Feb 22 12:29:34 2026 -0700"
      },
      "committer": {
        "name": "Tom Tromey",
        "email": "tom@tromey.com",
        "time": "Fri Aug 07 15:18:28 2026 -0600"
      },
      "message": "Add wrappers for Python implementation functions and methods\n\nThis adds some wrappers for Python implementation functions and\nmethods, and a couple of new constexpr functions to create PyMethodDef\nentries.  This provides a few safety benefits:\n\n* The new-style API approach (see previous patch) is implemented by\n  the wrapper.  That is, exceptions are caught here and transformed.\n\n* The implementation functions can now return any reasonable type,\n  with automatic conversion by the wrapper.\n\n* The function API and the appropriate METH_* flags are handled\n  together, avoiding any possible discrepancy.\n\nThis approach also means that we can modify the old rule that gdb\ncalls must be wrapped in a try/catch -- the try/catch is now provided\nby the wrapper function, so the implementation can be written in a\nmore natural way.\n\nNote that while this patch is usable as-is, it is not 100% complete,\nin sense that there is still future work to do when converting other\nparts of the gdb Python code.  For instance, there should be one more\nwrapper for case where a method takes a single argument (though we\nprobably cannot use METH_O unfortunately).\n\nAcked-By: Tom de Vries \u003ctdevries@suse.de\u003e\n"
    },
    {
      "commit": "bdd07fae21bf92a40dc599da8e5aad751713c67f",
      "tree": "8645df6f3c0de792bbb3c575335cca5a31d343f1",
      "parents": [
        "4294f0662859f3e06ae731867de95673b68fc67e"
      ],
      "author": {
        "name": "Tom Tromey",
        "email": "tom@tromey.com",
        "time": "Sun Feb 22 12:29:21 2026 -0700"
      },
      "committer": {
        "name": "Tom Tromey",
        "email": "tom@tromey.com",
        "time": "Fri Aug 07 15:18:22 2026 -0600"
      },
      "message": "Add wrappers for some Python APIs\n\nThis adds some new functions that wrap Python APIs.  The wrapping\nfollows some proposed rules for Python safety in gdb:\n\n* Functions returning a new reference return gdbpy_ref\u003c\u003e\n\n* Errors are reported via exceptions, not special values\n\n* Functions accepting a stolen reference take a gdbpy_ref\u003c\u003e\u0026\u0026\n\nAcked-By: Tom de Vries \u003ctdevries@suse.de\u003e\n"
    },
    {
      "commit": "4294f0662859f3e06ae731867de95673b68fc67e",
      "tree": "1f23c1ba69b8b26a102e2ba041b8cdbb6eb578c4",
      "parents": [
        "7800332405e135eaf3e1482b8195669b3662c142"
      ],
      "author": {
        "name": "Tom Tromey",
        "email": "tom@tromey.com",
        "time": "Sun Feb 22 12:29:00 2026 -0700"
      },
      "committer": {
        "name": "Tom Tromey",
        "email": "tom@tromey.com",
        "time": "Fri Aug 07 15:18:17 2026 -0600"
      },
      "message": "Add gdbpy_borrowed_ref\n\nThis adds new gdbpy_opt_borrowed_ref and gdbpy_borrowed_ref classes.\nThese classes are primarily for code \"documentation\" purposes -- it\nmakes it clear to the reader that a given reference is borrowed.\nHowever, they also add a tiny bit of safety, in that conversion to\ngdbpy_ref\u003c\u003e will either be rejected (by the \"opt\" class) or acquire a\nnew reference.\n\nAcked-By: Tom de Vries \u003ctdevries@suse.de\u003e\n"
    },
    {
      "commit": "7800332405e135eaf3e1482b8195669b3662c142",
      "tree": "45c4dc1e54464fd1dd673d4a7d431207a6656c1d",
      "parents": [
        "f992ea17c4d5ee240b689323a870a89aa89ff1bc"
      ],
      "author": {
        "name": "Andrew Burgess",
        "email": "aburgess@redhat.com",
        "time": "Wed Aug 05 17:23:38 2026 +0100"
      },
      "committer": {
        "name": "Andrew Burgess",
        "email": "aburgess@redhat.com",
        "time": "Fri Aug 07 15:58:50 2026 +0100"
      },
      "message": "gdb/ada: avoid rereading stale main name data in edge case\n\nThe commit:\n\n  commit 8eafbbc74748e499ec785f78858687bd7ea79005\n  Date:   Wed Jul 29 12:40:03 2026 -0600\n\n    Always fetch Ada \"main\" name from the executable\n\nchanges ada_main_name to use section_table_xfer_memory_partial.  This\nintroduced a highly unlikely, but theoretical bug where stale buffer\ndata could cause GDB to find an invalid name for \"main\".\n\nLooking at ada_main_name (in ada-lang.c), the steps to reproduce the\nbug are:\n\n  1. Debug a program that causes the static buffer main_program_name\n     to have some content written to it.  For the sake of this bug\n     let\u0027s assume the main name is \"xxxxxxxxxx\", the main_program_name\n     buffer will contain 10 \u0027x\u0027 characters, a null byte, then whatever\n     happened to be in the section after that.\n\n  2. A new executable is loaded into GDB and ada_main_name is called\n     again.\n\n  3. For whatever reason the new executable is maybe not correct.  The\n     ADA_MAIN_PROGRAM_SYMBOL_NAME symbol points to an address 5 bytes\n     before the end of a section.  None of these 5 bytes are a null\n     bytes.  Let\u0027s assume these 5 bytes are \"aaaaa\".\n\n  4. The section_table_xfer_memory_partial call will try to read up to\n     1024 bytes, but as there are only 5 bytes left in the section,\n     only 5 will be read.  This leaves the main_program_name buffer\n     containing \"aaaaaxxxxx\" followed by a null character byte.\n\n  5. GDB returns this merged string as the result from ada_main_name.\n\nNow given this depends on the second executable being broken, we maybe\ndon\u0027t really care too much, however, fixing this is pretty easy.\n\nThe current code already checks:\n\n  \u0026\u0026 (strnlen ((char *) main_program_name, sizeof (main_program_name))\n      \u003c sizeof (main_program_name))\n\nThis ensures that there\u0027s a string with a null byte contained within\nthe buffer, but makes the assumption that we always read\nsizeof (main_program_name) bytes from the section.\n\nBut we know how many bytes were read, that\u0027s the value in XFERRED.\nWhat we really want to ask is: was there a null terminated string\nwithin the bytes that we just read.  This is:\n\n  \u0026\u0026 (strnlen ((char *) main_program_name, xferred) \u003c xferred)\n\nGiven how simple this fix is, let\u0027s make it.\n\nApproved-By: Tom Tromey \u003ctom@tromey.com\u003e\n"
    },
    {
      "commit": "f992ea17c4d5ee240b689323a870a89aa89ff1bc",
      "tree": "6b9a0c7f65bb404c62e20af16306156b4e1b006d",
      "parents": [
        "6c4db2e34ac0ee5c3477896516020c8db5b77d81"
      ],
      "author": {
        "name": "Andrew Burgess",
        "email": "aburgess@redhat.com",
        "time": "Fri Aug 07 15:22:22 2026 +0100"
      },
      "committer": {
        "name": "Andrew Burgess",
        "email": "aburgess@redhat.com",
        "time": "Fri Aug 07 15:55:19 2026 +0100"
      },
      "message": "sim: delete sim/ppc/.gdbinit\n\nThe sim/ppc/.gdbinit has existed since the initial repository creation\ncommits.  However, I don\u0027t think it adds any value and can be\ndeleted.  The contents of the file were just:\n\n  set output-radix 16\n  break error\n\nThe sim/ tree already includes rules in its Makefile to build a\n.gdbinit for each simulator which sources sim/gdbinit.in, so if anyone\nwants to argue for keeping either of the above lines then they should\nbe added to the sim/gdbinit.in file.\n\nKeeping sim/ppc/.gdbinit in tree is an annoyance for the release\nprocess as \u0027make distclean\u0027 in the sim tree ends up deleting the file.\n"
    },
    {
      "commit": "6c4db2e34ac0ee5c3477896516020c8db5b77d81",
      "tree": "215d99e51ec1b6806ae772acdbc8120a7bf5716b",
      "parents": [
        "6e72ff251801b05ec10bed36130647985658d7c3"
      ],
      "author": {
        "name": "Tom Tromey",
        "email": "tromey@adacore.com",
        "time": "Wed Jul 22 07:19:21 2026 -0600"
      },
      "committer": {
        "name": "Tom Tromey",
        "email": "tromey@adacore.com",
        "time": "Fri Aug 07 07:59:02 2026 -0600"
      },
      "message": "Minor \u0027debug_*\u0027 function improvements\n\nI wanted to get a summary of a type in gdb and then realized I had\nforgotten the function name, so I had to dig around to find it.  This\nmade me think that perhaps renaming the debug_* functions to all just\nbe named \u0027debug\u0027 would be an improvement, since it\u0027s easier to\nremember.\n\nThen I noticed that debug_type and debug_val don\u0027t print a trailing\nnewline.\n\nFinally, I needed to be able to see the contents of a gdb_mpz.\n\nv2 changes these functions to use ATTRIBUTE_USED rather than\nATTRIBUTE_UNUSED, as the former indicates that these should not be\ndeleted even if apparently unused.\n\nApproved-By: Tom de Vries \u003ctdevries@suse.de\u003e\n\n\n"
    },
    {
      "commit": "6e72ff251801b05ec10bed36130647985658d7c3",
      "tree": "35bf407a37b9d428b4bf6b37e8a8f980f1f8eef3",
      "parents": [
        "65e4958fd4c4199ca10baed7827dddc4d6780a2d"
      ],
      "author": {
        "name": "Kyrylo Tkachov",
        "email": "ktkachov@nvidia.com",
        "time": "Wed Aug 05 15:11:46 2026 +0200"
      },
      "committer": {
        "name": "Kyrylo Tkachov",
        "email": "ktkachov@nvidia.com",
        "time": "Fri Aug 07 07:30:25 2026 +0200"
      },
      "message": "aarch64: ERRAT_NONE is not zero, so test against it\n\nerratum_84319_opts starts at ERRAT_NONE \u003d (1 \u003c\u003c 0), so a plain boolean test\non fix_erratum_843419 is true even when no erratum workaround was asked for.\nEvery other use in the file tests against ERRAT_NONE or masks with ERRAT_ADR /\nERRAT_ADRP.  Two do not.\n\nThe bare test dates from the conversion of fix_erratum_843419 from an int to an\nenum for PR ld/24373.\n\nHaving the workaround on by default all the time is, of course, undesirable as\nit costs link-time and is not what the user has asked by default.\n\nTested on aarch64-none-linux-gnu.\n\nbfd/\n\t* elfnn-aarch64.c (elfNN_aarch64_write_section): Test\n\tfix_erratum_843419 against ERRAT_NONE.\n\t(elfNN_aarch64_late_size_sections): Likewise.\n\nSigned-off-by: Kyrylo Tkachov \u003cktkachov@nvidia.com\u003e\n"
    },
    {
      "commit": "65e4958fd4c4199ca10baed7827dddc4d6780a2d",
      "tree": "c1afae8ed6e3bb2b52c585a5362af28e095d6696",
      "parents": [
        "035b2e70824ab51ec4d6754345456622c618b450"
      ],
      "author": {
        "name": "GDB Administrator",
        "email": "gdbadmin@sourceware.org",
        "time": "Fri Aug 07 00:00:07 2026 +0000"
      },
      "committer": {
        "name": "GDB Admin",
        "email": "brobecker@adacore.com",
        "time": "Fri Aug 07 00:00:07 2026 +0000"
      },
      "message": "Automatic date update in version.in\n"
    },
    {
      "commit": "035b2e70824ab51ec4d6754345456622c618b450",
      "tree": "41192cd354a70025e73ed47bf64022b846d86e9d",
      "parents": [
        "d71c8e3e713b6baf884a7b12a9435e53111b574b"
      ],
      "author": {
        "name": "Tom Tromey",
        "email": "tromey@adacore.com",
        "time": "Wed Aug 05 13:30:42 2026 -0600"
      },
      "committer": {
        "name": "Tom Tromey",
        "email": "tromey@adacore.com",
        "time": "Thu Aug 06 11:41:46 2026 -0600"
      },
      "message": "Remove redundant check from check_types_equal\n\ncheck_types_equal compares both is_nottext and instance_flags, but the\nlatter includes the former, so the redundant check can be removed.\n\nReviewed-By: Tankut Baris Aktemur \u003cTankutBaris.Aktemur@amd.com\u003e\nApproved-By: Tom de Vries \u003ctdevries@suse.de\u003e\n\n\n"
    },
    {
      "commit": "d71c8e3e713b6baf884a7b12a9435e53111b574b",
      "tree": "b656a83d26623ca88e7d387121f63e5c3de26b56",
      "parents": [
        "0989971f0b15db75d8aa8e94b6b269a83b6fb4af"
      ],
      "author": {
        "name": "Andrew Burgess",
        "email": "aburgess@redhat.com",
        "time": "Thu Aug 06 17:53:46 2026 +0100"
      },
      "committer": {
        "name": "Andrew Burgess",
        "email": "aburgess@redhat.com",
        "time": "Thu Aug 06 17:53:46 2026 +0100"
      },
      "message": "Update gdb/NEWS after GDB 18 branch creation.\n\nThis commit a new section for the next release branch, and renames\nthe section of the current branch, now that it has been cut.\n"
    },
    {
      "commit": "0989971f0b15db75d8aa8e94b6b269a83b6fb4af",
      "tree": "1a10f6ac31627eec7a94af871e72611882fbf751",
      "parents": [
        "1e17a2f208f10e4bdc4e7f6001addb24cea396ee"
      ],
      "author": {
        "name": "Andrew Burgess",
        "email": "aburgess@redhat.com",
        "time": "Thu Aug 06 17:19:24 2026 +0100"
      },
      "committer": {
        "name": "Andrew Burgess",
        "email": "aburgess@redhat.com",
        "time": "Thu Aug 06 17:19:24 2026 +0100"
      },
      "message": "Bump version to 19.0.50.DATE-git.\n\nNow that the GDB 18 branch has been created,\nthis commit bumps the version number in gdb/version.in to\n19.0.50.DATE-git\n\nFor the record, the GDB 18 branch was created\nfrom commit b737567fed7f672fd54b40967c6c0234ef257434.\n"
    },
    {
      "commit": "1e17a2f208f10e4bdc4e7f6001addb24cea396ee",
      "tree": "2d315b8b0f4b5984d316fe1b89fae9c3230a55ac",
      "parents": [
        "f94273aeb37908c32aa26530ff56e862f0060daf"
      ],
      "author": {
        "name": "Shahab Vahedi",
        "email": "shahab.vahedi@amd.com",
        "time": "Mon Jul 27 15:48:05 2026 +0200"
      },
      "committer": {
        "name": "Shahab Vahedi",
        "email": "shahab.vahedi@amd.com",
        "time": "Thu Aug 06 13:05:37 2026 +0200"
      },
      "message": "bfd,binutils: add support for gfx1103\n\nAdd ELF header definition for gfx1103.  The canonical source is:\n\nhttps://llvm.org/docs/AMDGPUUsage.html#amdgpu-ef-amdgpu-mach-table\n"
    },
    {
      "commit": "f94273aeb37908c32aa26530ff56e862f0060daf",
      "tree": "dbd8b6e4e83ec1c04e2785d9c5c1c29c3ad877ed",
      "parents": [
        "a692a633d407995a5ce87e84a0b1032e9ac51360"
      ],
      "author": {
        "name": "H.J. Lu",
        "email": "hjl.tools@gmail.com",
        "time": "Thu Aug 06 10:33:02 2026 +0800"
      },
      "committer": {
        "name": "H.J. Lu",
        "email": "hjl.tools@gmail.com",
        "time": "Thu Aug 06 14:37:41 2026 +0800"
      },
      "message": "readelf: Don\u0027t dump GOT section after seeing error\n\nDon\u0027t dump GOT section contents after seeing errors in input:\n\nreadelf: Error: Section 10 has invalid sh_entsize of 0\nreadelf: Error: (Using the expected size of 18 for the rest of this dump)\nreadelf: Error: Too many program headers - 0x3030 - the file is not that big\n\n\tPR binutils/34473\n\t* elfcomm.c (seen_error): New.\n\t(seen_elf_error): Likewise.\n\t(clear_elf_error): Likewise.\n\t(error): Set seen_error to true.\n\t* elfcomm.h (seen_elf_error): New.\n\t(clear_elf_error): Likewise.\n\t* readelf.c (process_got_section_contents): Return false if\n\tseen_elf_error returns true.\n\t(main): Call clear_elf_error before calling process_file.\n\nSigned-off-by: H.J. Lu \u003chjl.tools@gmail.com\u003e\n"
    },
    {
      "commit": "a692a633d407995a5ce87e84a0b1032e9ac51360",
      "tree": "21add5b44e465eec1b74c2a6687653ccf71dfc2e",
      "parents": [
        "b737567fed7f672fd54b40967c6c0234ef257434"
      ],
      "author": {
        "name": "H.J. Lu",
        "email": "hjl.tools@gmail.com",
        "time": "Wed Aug 05 16:43:05 2026 +0800"
      },
      "committer": {
        "name": "H.J. Lu",
        "email": "hjl.tools@gmail.com",
        "time": "Thu Aug 06 09:32:12 2026 +0800"
      },
      "message": "ld: Check input section garbage collection error\n\nThe ELF backend gc_mark_extra_sections function may return false for\nerror and bfd_gc_sections may return false on invalid input:\n\nld: pr34448-bug_18.o: bad reloc symbol index (0xf2000005 \u003e\u003d 0x13) for offset 0x4 in section `.text.get_tls[get_tls]\u0027\n\nChange bfd_elf_gc_sections to return false if gc_mark_extra_sections\nreturn false.  Change lang_gc_sections to check bfd_gc_sections return\nand report the fatal error.\n\nbfd/\n\tPR ld/34448\n\t* elflink.c (bfd_elf_gc_sections): Return false if\n\tgc_mark_extra_sections return false.\n\nld/\n\tPR ld/34448\n\t* ldlang.c (lang_gc_sections): Check bfd_gc_sections return and\n\treport the fatal error.\n\nSigned-off-by: H.J. Lu \u003chjl.tools@gmail.com\u003e\n"
    },
    {
      "commit": "b737567fed7f672fd54b40967c6c0234ef257434",
      "tree": "a85f8b447dc3abe67c8457b9d4ab468f6b88faa8",
      "parents": [
        "0a84e5602163e9f95a6f137ced28aff0507ce790"
      ],
      "author": {
        "name": "GDB Administrator",
        "email": "gdbadmin@sourceware.org",
        "time": "Thu Aug 06 00:00:08 2026 +0000"
      },
      "committer": {
        "name": "GDB Admin",
        "email": "brobecker@adacore.com",
        "time": "Thu Aug 06 00:00:08 2026 +0000"
      },
      "message": "Automatic date update in version.in\n"
    },
    {
      "commit": "0a84e5602163e9f95a6f137ced28aff0507ce790",
      "tree": "c63e94db30cd5530600f139376ae658bb5773e02",
      "parents": [
        "283d3198beda5110a8417fd09b336a34bbd2705c"
      ],
      "author": {
        "name": "H.J. Lu",
        "email": "hjl.tools@gmail.com",
        "time": "Sat Aug 01 11:23:39 2026 +0800"
      },
      "committer": {
        "name": "H.J. Lu",
        "email": "hjl.tools@gmail.com",
        "time": "Thu Aug 06 07:08:37 2026 +0800"
      },
      "message": "x86: Check if needed dynamic relocation section is created\n\nSince elf_link_read_relocs_from_section aborts for bad relocation,\nfurther relocations won\u0027t be processed and needed dynamic relocation\nsection won\u0027t be created.  Skip dynamic relocation count if needed\ndynamic relocation section hasn\u0027t been created.\n\n\tPR ld/34448\n\t* elfxx-x86.c (_bfd_x86_elf_late_size_sections): Skip dynamic\n\trelocation count if needed dynamic relocation section hasn\u0027t been\n\tcreated.\n\nSigned-off-by: H.J. Lu \u003chjl.tools@gmail.com\u003e\n"
    },
    {
      "commit": "283d3198beda5110a8417fd09b336a34bbd2705c",
      "tree": "bd179be8d20e3c4603e8ff96640f106d3c037b37",
      "parents": [
        "44fab92685fd1f4bc02cc6668237883ed0d9789d"
      ],
      "author": {
        "name": "H.J. Lu",
        "email": "hjl.tools@gmail.com",
        "time": "Fri Jul 31 05:47:15 2026 +0800"
      },
      "committer": {
        "name": "H.J. Lu",
        "email": "hjl.tools@gmail.com",
        "time": "Thu Aug 06 05:53:58 2026 +0800"
      },
      "message": "x86: Improve relocation error reporting\n\nFor bfd_reloc_outofrange relocation error, instead of\n\nld: pr34448-bug_4.o(.debug_addr+0x7f000008): reloc against `.text.get_tls\u0027: error 4\n\nlinker now reports:\n\nld: pr34448-bug_4.o(.debug_addr+0x7f000008): relocation `R_X86_64_64\u0027 against `.text.get_tls\u0027: out of section range\n\n\tPR ld/34448\n\t* elf32-i386.c (elf_i386_relocate_section): Call\n\t_bfd_x86_elf_link_report_relocation_error for relocation error.\n\t* elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.\n\t* elfxx-x86.c (_bfd_x86_elf_link_report_relocation_error): New.\n\t* elfxx-x86.h (_bfd_x86_elf_link_report_relocation_error): New.\n\nSigned-off-by: H.J. Lu \u003chjl.tools@gmail.com\u003e\n"
    },
    {
      "commit": "44fab92685fd1f4bc02cc6668237883ed0d9789d",
      "tree": "c0ff35f477255a19fbb2b8870e5370df4b1d865c",
      "parents": [
        "b7da195b94b423e5cfd27a14c636ffe9f7380cdd"
      ],
      "author": {
        "name": "H.J. Lu",
        "email": "hjl.tools@gmail.com",
        "time": "Thu Jul 30 15:18:42 2026 +0800"
      },
      "committer": {
        "name": "H.J. Lu",
        "email": "hjl.tools@gmail.com",
        "time": "Thu Aug 06 05:25:20 2026 +0800"
      },
      "message": "ld: Don\u0027t treated the fatal error as warning\n\nChange fatal to pass false as the is_warning argument to vfinfo so that\nthe fatal error message isn\u0027t treated as a warning by vfinfo.\n\n\t* ldmisc.c (fatal): Pass false as the is_warning argument to\n\tvfinfo.\n\nSigned-off-by: H.J. Lu \u003chjl.tools@gmail.com\u003e\n"
    },
    {
      "commit": "b7da195b94b423e5cfd27a14c636ffe9f7380cdd",
      "tree": "14dd8cbc008e32158c65afda3f3b516ae0ae7527",
      "parents": [
        "cd4e3876afb11e07fb7f3ccc10a87e3b990074eb"
      ],
      "author": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Wed Aug 05 15:08:03 2026 +0200"
      },
      "committer": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Wed Aug 05 15:08:03 2026 +0200"
      },
      "message": "[gdb/testsuite] Improve gdb.python/remove-readline-finder.exp\n\nI came across test-case gdb.python/remove-readline-finder.exp.\n\nIt checks that a \"python import readline\" command fails.\n\nExtend the test-case with also checking that the readline module is not\npresent in the sys.modules dict.\n\nWhile we\u0027re at it, modernize a regexp using multi_line.\n\nTested on x86_64-linux (using make-check-all.sh) and aarch64-linux.\n"
    },
    {
      "commit": "cd4e3876afb11e07fb7f3ccc10a87e3b990074eb",
      "tree": "46f0838f1f149996e74aed37019f43618ca19dcb",
      "parents": [
        "981c2441c22487d30fac7303ad761218dbeeb3fa"
      ],
      "author": {
        "name": "Nils-Christian Kempke",
        "email": "nils-christian.kempke@intel.com",
        "time": "Tue Feb 15 12:12:57 2022 +0100"
      },
      "committer": {
        "name": "Rohr, Stephan",
        "email": "stephan.rohr@intel.com",
        "time": "Wed Aug 05 07:02:35 2026 +0000"
      },
      "message": "gdb: default \u0027id\u0027 to nullptr in \u0027ui_out_emit_type\u0027\n\nMake \u0027id \u003d nullptr\u0027 the default argument for the \u0027ui_out_emit_type\u0027\nctor.\n\nCo-Authored-By: Stephan Rohr \u003cstephan.rohr@intel.com\u003e\nApproved-By: Tom de Vries \u003ctdevries@suse.de\u003e\n"
    },
    {
      "commit": "981c2441c22487d30fac7303ad761218dbeeb3fa",
      "tree": "1134d91e7a240376fff7532aa3d29fcd1e124b3a",
      "parents": [
        "9790ec8b5538fdf7d61474c48c98bd9dbe0b4d31"
      ],
      "author": {
        "name": "Tankut Baris Aktemur",
        "email": "tankutbaris.aktemur@amd.com",
        "time": "Wed Aug 05 08:02:57 2026 +0200"
      },
      "committer": {
        "name": "Tankut Baris Aktemur",
        "email": "tankutbaris.aktemur@amd.com",
        "time": "Wed Aug 05 08:03:22 2026 +0200"
      },
      "message": "gdb: prefer lhs type\u0027s address spaces/classes in check_typedef\n\nIn commit 92fdad7 \"gdb: convert type instance flags to bitfields\",\n`operator|\u003d` of type_instance_flags required the address space and\naddress class values of left-hand-side to be zero.  This introduced\nthe following bug (thanks to Keith Seitz for reporting it at\nhttps://inbox.sourceware.org/gdb-patches/053e90c0-53f0-4748-9d27-0237b9f21221@redhat.com/T/#u):\n\n  typedef int myint;\n\n  (gdb) ptype (@code myint) 3\n  ../../src/gdb/gdbtypes.h:127: internal-error: operator|\u003d: Assertion\n  `harvard_aspace \u003d\u003d 0\u0027 failed.\n  A problem internal to GDB has been detected,\n  further debugging may prove unreliable.\n  ----- Backtrace -----\n  0x5bb1d1 gdb_internal_backtrace_1\n          ../../src/gdb/bt-utils.c:122\n  0x5bb210 _Z22gdb_internal_backtracev\n          ../../src/gdb/bt-utils.c:173\n  0xdfbbaa internal_vproblem\n          ../../src/gdb/utils.c:434\n  0xdfbf45 _Z15internal_verrorPKciS0_P13__va_list_tag\n          ../../src/gdb/utils.c:514\n  0x162763f _Z18internal_error_locPKciS0_z\n          ../../src/gdbsupport/errors.cc:57\n  0x87e8e6 _ZN19type_instance_flagsoRERKS_\n          ../../src/gdb/gdbtypes.h:127\n  0x875d71 _Z13check_typedefP4type\n          ../../src/gdb/gdbtypes.c:3072\n\nThe |\u003d operator is used in check_typedef as follows:\n\n      /* Preserve the instance flags as we traverse down the typedef chain.\n\n         Handling address spaces/classes is nasty, what do we do if there\u0027s a\n         conflict?\n         E.g., what if an outer typedef marks the type as class_1 and an inner\n         typedef marks the type as class_2?\n         This is the wrong place to do such error checking.  We leave it to\n         the code that created the typedef in the first place to flag the\n         error.  We just pick the outer address space (akin to letting the\n         outer cast in a chain of casting win), instead of assuming\n         \"it can\u0027t happen\".  */\n      {\n        type_instance_flags new_instance_flags \u003d type-\u003einstance_flags ();\n\n        /* Treat code vs data spaces and address classes separately.  */\n        if (instance_flags.harvard_aspace !\u003d HARVARD_ASPACE_NONE)\n          new_instance_flags.harvard_aspace \u003d HARVARD_ASPACE_NONE;\n        if (instance_flags.address_class !\u003d 0)\n          new_instance_flags.address_class \u003d 0;\n\n        instance_flags |\u003d new_instance_flags;\n      }\n\nSo, the assertion in operator|\u003d was wrong.  The outer type, which is\nthe left-hand-side in this case, should preserve its values if they\nare non-zero.  The right-hand-side values are used, if lhs values are\nzero.  Fix the bug accordingly.\n\nFurthermore, rename operator|\u003d to \"merge\".  Type instance flags are no\nlonger stored as a bitmask value, but rather as a struct.  Having an\noperator like |\u003d gives the wrong impression that we are doing a\nbitmask OR.  Using a method makes the intention clearer.\n\nInclude a regression test.\n\nReviewed-By: Keith Seitz \u003ckeiths@redhat.com\u003e\nApproved-By: Tom Tromey \u003ctom@tromey.com\u003e\n"
    },
    {
      "commit": "9790ec8b5538fdf7d61474c48c98bd9dbe0b4d31",
      "tree": "4223917422ab4d07480fcbbb31fbc898c0e4d8f1",
      "parents": [
        "9435ff696fd318a6733da781e2a29afd753f7bf1"
      ],
      "author": {
        "name": "GDB Administrator",
        "email": "gdbadmin@sourceware.org",
        "time": "Wed Aug 05 00:00:07 2026 +0000"
      },
      "committer": {
        "name": "GDB Admin",
        "email": "brobecker@adacore.com",
        "time": "Wed Aug 05 00:00:07 2026 +0000"
      },
      "message": "Automatic date update in version.in\n"
    },
    {
      "commit": "9435ff696fd318a6733da781e2a29afd753f7bf1",
      "tree": "b3a025fbad4e56b04d6675763dbb7b998371879f",
      "parents": [
        "471130b39c03623ec6d78ece377ff4da3f6bfe7b"
      ],
      "author": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Tue Aug 04 20:32:28 2026 +0200"
      },
      "committer": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Tue Aug 04 20:32:28 2026 +0200"
      },
      "message": "[pre-commit] Avoid tabs in .pre-commit-config.yaml\n\nWhen editing .pre-commit-config.yaml with emacs, I tend to get tab-indented\nlines, which causes:\n...\n$ git commit -a\nAn error has occurred: InvalidConfigError:\n\u003d\u003d\u003e File .pre-commit-config.yaml\n\u003d\u003d\u003d\u003d\u003d\u003e while scanning for the next token\nfound character that cannot start any token\n  in \"\u003cunicode string\u003e\", line 150, column 1\n...\n\nFix this by adding a \"Local Variables\" section.\n\nApproved-By: Tom Tromey \u003ctom@tromey.com\u003e\n"
    },
    {
      "commit": "471130b39c03623ec6d78ece377ff4da3f6bfe7b",
      "tree": "31e199f6831b084bae6fe4d49a566788f1a6ef6f",
      "parents": [
        "7322e9bc30cb282575a701c307851fd3d66fee68"
      ],
      "author": {
        "name": "H.J. Lu",
        "email": "hjl.tools@gmail.com",
        "time": "Thu Jul 30 13:43:56 2026 +0800"
      },
      "committer": {
        "name": "H.J. Lu",
        "email": "hjl.tools@gmail.com",
        "time": "Tue Aug 04 11:09:38 2026 +0800"
      },
      "message": "x86: Check invalid GOT/PLT/TLS relocations\n\n1. Since non-alloc sections aren\u0027t checked for TLS, GOT and PLT usages,\nrelocate_section should issue error for TLS, GOT and PLT relocations in\nnon-alloc and non-debugging sections.\n2. Since TLS relocations must be against thread local symbols, scan_relocs\nshould issue an error for TLS relocation against non-thread local symbol.\n\n\tPR ld/34444\n\tPR ld/34448\n\t* elf32-i386.c (elf_i386_tls_transition): Replace\n\t_bfd_x86_elf_link_report_tls_invalid_section_error with\n\t_bfd_x86_elf_link_report_error.\n\t(elf_i386_scan_relocs): Issue an error for TLS relocation against\n\tnon-thread local symbol.\n\t(elf_i386_relocate_section): Issue error for TLS, GOT and PLT\n\trelocations in non-alloc and non-debugging sections.\n\t* elf64-x86-64.c (elf_x86_64_tls_transition): Replace\n\t_bfd_x86_elf_link_report_tls_invalid_section_error with\n\t_bfd_x86_elf_link_report_error.\n\t(elf_x86_64_scan_relocs): Issue an error for TLS relocation\n\tagainst non-thread local symbol.\n\t* elfxx-x86.c (_bfd_x86_elf_link_report_tls_invalid_section_error):\n\tRenamed to ...\n\t(_bfd_x86_elf_link_report_error): This.  Add an argument for\n\tlink error type and handle it.\n\t* elfxx-x86.h (elf_x86_error_type): New enum.\n\t(_bfd_x86_elf_link_report_tls_invalid_section_error): Renamed\n\tto ...\n\t(_bfd_x86_elf_link_report_error): This.  Add an argument of\n\tenum elf_x86_error_type.\n\nSigned-off-by: H.J. Lu \u003chjl.tools@gmail.com\u003e\n"
    },
    {
      "commit": "7322e9bc30cb282575a701c307851fd3d66fee68",
      "tree": "db7c3337df4b49fab08973b2275bfc3dbbd7690b",
      "parents": [
        "bccf143031d4698846bb7ceedc2eddc9df0fe724"
      ],
      "author": {
        "name": "H.J. Lu",
        "email": "hjl.tools@gmail.com",
        "time": "Thu Jul 30 15:47:05 2026 +0800"
      },
      "committer": {
        "name": "H.J. Lu",
        "email": "hjl.tools@gmail.com",
        "time": "Tue Aug 04 11:06:04 2026 +0800"
      },
      "message": "x86-64: Return SHN_COMMON on non-ELF input\n\nelf_x86_64_common_definition segfaults on PE/x86-64 input.  Return\nSHN_COMMON on non-ELF input.  Linker now gets assertion fail at\nbfd/coffgen.c:575, instead of getting segfault.\n\n\tPR ld/34449\n\t* elf64-x86-64.c (elf_x86_64_common_definition): Return\n\tSHN_COMMON on non-ELF input.\n\nSigned-off-by: H.J. Lu \u003chjl.tools@gmail.com\u003e\n"
    },
    {
      "commit": "bccf143031d4698846bb7ceedc2eddc9df0fe724",
      "tree": "d40f74213ff32dee7b1ac5249b4a530ce9f940f2",
      "parents": [
        "b708bb94cf2437b83e2c9c5d3a3ca1966fac3bd1"
      ],
      "author": {
        "name": "GDB Administrator",
        "email": "gdbadmin@sourceware.org",
        "time": "Tue Aug 04 00:00:08 2026 +0000"
      },
      "committer": {
        "name": "GDB Admin",
        "email": "brobecker@adacore.com",
        "time": "Tue Aug 04 00:00:08 2026 +0000"
      },
      "message": "Automatic date update in version.in\n"
    },
    {
      "commit": "b708bb94cf2437b83e2c9c5d3a3ca1966fac3bd1",
      "tree": "28e90310b2f72907a440cfa37beab0910b3c591f",
      "parents": [
        "44eca7e071af1233d7a9a2a04e059f2f2866f947"
      ],
      "author": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Mon Aug 03 21:09:48 2026 +0200"
      },
      "committer": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Mon Aug 03 21:09:48 2026 +0200"
      },
      "message": "[gdb/testsuite] Require allow_xml_test in gdb.base/gcore.exp\n\nI build gdb without xml support, and with test-case gdb.base/gcore.exp ran\ninto:\n...\n(gdb) core $outputs/gdb.base/gcore/gcore.test\nwarning: Can not parse XML target description; \\\n  XML support was disabled at compile time\n  ...\n(gdb) FAIL: $exp: corefile restored general registers\n...\n\nFix this by requiring allow_xml_test.\n"
    },
    {
      "commit": "44eca7e071af1233d7a9a2a04e059f2f2866f947",
      "tree": "bf68fb95c05453b77b6e24b6685853de10576119",
      "parents": [
        "f792df95877498ef71fe8f2849b1790e56baf4ab"
      ],
      "author": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Mon Aug 03 20:54:12 2026 +0200"
      },
      "committer": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Mon Aug 03 20:54:12 2026 +0200"
      },
      "message": "[gdb/testsuite] Require allow_xml_test in gdb.base/foll-fork-syscall.exp\n\nI build gdb without xml support, and ran into:\n...\n(gdb) catch syscall chdir\nwarning: Can not parse XML syscalls information; \\\n  XML support was disabled at compile time.\nUnknown syscall name \u0027chdir\u0027.^M\n(gdb) FAIL: $exp: follow-fork-mode\u003dparent: detach-on-fork\u003don: \\\n  test_catch_syscall: catch syscall chdir\n...\n\nFix this by requiring allow_xml_test.\n"
    },
    {
      "commit": "f792df95877498ef71fe8f2849b1790e56baf4ab",
      "tree": "a4f5f4233eb2e8d62db551e3c0d11f12275bfca6",
      "parents": [
        "a58e6081294fd3dde8fc7397f3a09f8c8a3f87aa"
      ],
      "author": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Mon Aug 03 20:36:35 2026 +0200"
      },
      "committer": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Mon Aug 03 20:36:35 2026 +0200"
      },
      "message": "[gdb/testsuite] Require allow_python_tests in gdb.cp/pretty-print.exp\n\nI build gdb without python support, and ran into:\n...\n(gdb) source $src/gdb/testsuite/gdb.cp/pretty-print.py\n$src/gdb/testsuite/gdb.cp/pretty-print.py:18: Error in sourced command file:\nUndefined command: \"import\".  Try \"help\".\n(gdb) ERROR: Undefined command \"source $src/gdb/testsuite/gdb.cp/pretty-print.py\".\n...\n\nFix this by requiring allow_python_tests.\n"
    },
    {
      "commit": "a58e6081294fd3dde8fc7397f3a09f8c8a3f87aa",
      "tree": "715bffb151fd1bb17daa8cce3bfd5a4d2cc1203d",
      "parents": [
        "8b3ea407f65571000c9fc3d79081b65d1b4e3759"
      ],
      "author": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Mon Aug 03 19:51:31 2026 +0200"
      },
      "committer": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Mon Aug 03 19:51:31 2026 +0200"
      },
      "message": "[gdb/testsuite] Fix gdb.dwarf2/dw-form-strx-out-of-bounds.exp\n\nWith test-case gdb.dwarf2/dw-form-strx-out-of-bounds.exp, I usually get:\n...\n(gdb) file dw-form-strx-out-of-bounds\nReading symbols from dw-form-strx-out-of-bounds...\n(gdb) ptype global_var\nDWARF Error: Offset from DW_FORM_GNU_str_index or DW_FORM_strx pointing \\\n  outside of .debug_str_offsets section in CU at offset 0x2d1 [in module \\\n  dw-form-strx-out-of-bounds]\nNo symbol \"global_var\" in current context.\n(gdb) PASS: $exp: ptype global_var\n...\n\nBut I just ran into:\n...\n(gdb) file dw-form-strx-out-of-bounds^M\nReading symbols from dw-form-strx-out-of-bounds...\nDWARF Error: Offset from DW_FORM_GNU_str_index or DW_FORM_strx pointing \\\n  outside of .debug_str_offsets section in CU at offset 0x2df [in module \\\n  dw-form-strx-out-of-bounds]^M\n(gdb) ptype global_var^M\nNo symbol \"global_var\" in current context.^M\n(gdb) FAIL: $exp: ptype global_var\n...\n\nFix this by:\n- using \"maint set dwarf synchronous on\" to ensure that the error happens\n  during the file command\n- updating the matching to check $gdb_file_cmd_msg\n\nTested gdb.dwarf2/dw-form-strx-out-of-bounds.exp and gdb.dwarf2/dw-form-strx.exp\nusing make-check-all.sh on x86_64-linux.\n"
    },
    {
      "commit": "8b3ea407f65571000c9fc3d79081b65d1b4e3759",
      "tree": "047ed9c38dbb9f3728cae71a43df50937ba06666",
      "parents": [
        "23ee11771f16449e384ada7a0de83722aaceafcf"
      ],
      "author": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Mon Aug 03 19:03:14 2026 +0200"
      },
      "committer": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Mon Aug 03 19:03:14 2026 +0200"
      },
      "message": "[gdb/testsuite] Require allow_tui_tests in gdb.tui/new-ui.exp\n\nI build gdb without TUI support, and ran into:\n...\nFAIL: gdb.tui/new-ui.exp: main-ui: new-ui tui $new_ui_tty_name\n...\n\nFix this by requiring allow_tui_tests.\n"
    },
    {
      "commit": "23ee11771f16449e384ada7a0de83722aaceafcf",
      "tree": "af261fa2eee810c4b12800e89ce29daffbd0cfb3",
      "parents": [
        "4374c16fbac0bbc261e3fd510548bbb65c3fc398"
      ],
      "author": {
        "name": "Tankut Baris Aktemur",
        "email": "tankutbaris.aktemur@amd.com",
        "time": "Mon Aug 03 15:52:35 2026 +0200"
      },
      "committer": {
        "name": "Tankut Baris Aktemur",
        "email": "tankutbaris.aktemur@amd.com",
        "time": "Mon Aug 03 17:31:00 2026 +0200"
      },
      "message": "gdb: do minor code modernization in make_pointer_type and make_reference_type\n\nThis is a small code modernization.  There should be no behavioral\nchange.\n\nApproved-By: Simon Marchi \u003csimon.marchi@efficios.com\u003e\n"
    },
    {
      "commit": "4374c16fbac0bbc261e3fd510548bbb65c3fc398",
      "tree": "743f763c05cc1c1b12d9feebd26d21d7721edc7b",
      "parents": [
        "f8061f0edbeb7f103b6764844a771d800846af32"
      ],
      "author": {
        "name": "Tankut Baris Aktemur",
        "email": "tankutbaris.aktemur@amd.com",
        "time": "Mon Aug 03 15:38:34 2026 +0200"
      },
      "committer": {
        "name": "Tankut Baris Aktemur",
        "email": "tankutbaris.aktemur@amd.com",
        "time": "Mon Aug 03 17:30:53 2026 +0200"
      },
      "message": "gdb: remove dead code in make_pointer_type and make_reference_type\n\nAt the end of `make_pointer_type` and `make_reference_type`, GDB\nupdates the length of every type in the chain.  This is practically\ndead code, because if we reach this point, we must have allocated a\nnew type.  After a new allocation, the chain contains only the\nnewly-created type itself.  See in `type_allocator::new_type ()`:\n\n  type-\u003echain \u003d type;   /* Chain back to itself.  */\n\nThat is, we always have `ntype \u003d\u003d ntype-\u003echain`.  Therefore, the loop\ncan never be entered.  Remove it.\n\nIn `make_reference_type`, we also remove `*reftype \u003d ntype;`, because\na few lines above the assignment was already made.  This is repeated\ncode.\n\nApproved-By: Simon Marchi \u003csimon.marchi@efficios.com\u003e\n"
    },
    {
      "commit": "f8061f0edbeb7f103b6764844a771d800846af32",
      "tree": "f24d84fe20ea53d2389414e4a0948402fc4ca3db",
      "parents": [
        "8eafbbc74748e499ec785f78858687bd7ea79005"
      ],
      "author": {
        "name": "Tom Tromey",
        "email": "tromey@adacore.com",
        "time": "Wed Jul 29 08:06:06 2026 -0600"
      },
      "committer": {
        "name": "Tom Tromey",
        "email": "tromey@adacore.com",
        "time": "Mon Aug 03 07:29:44 2026 -0600"
      },
      "message": "Fix type of imported variable for arraydim.exp\n\nThe test code for gdb.ada/arraydim.exp imports a variable using a\ndummy type.  Then the test tries to print the type of this variable.\nThis works ok with GCC, because the import is emitted as a\ndeclaration; but this fails with gnat-llvm, where a definition is\nemitted.\n\nThis seems to be a test bug to me.  This patch fixes the problem by\nusing the correct type here.\n\nReviewed-By: Tom de Vries \u003ctdevries@suse.de\u003e\n"
    },
    {
      "commit": "8eafbbc74748e499ec785f78858687bd7ea79005",
      "tree": "c2c6318cc9e017d4ada1bd3342c6ca7b733cd7ca",
      "parents": [
        "7023cf901ca6adb8a6ffa46b9856bc95eb78ed85"
      ],
      "author": {
        "name": "Tom Tromey",
        "email": "tromey@adacore.com",
        "time": "Wed Jul 29 12:40:03 2026 -0600"
      },
      "committer": {
        "name": "Tom Tromey",
        "email": "tromey@adacore.com",
        "time": "Mon Aug 03 07:24:05 2026 -0600"
      },
      "message": "Always fetch Ada \"main\" name from the executable\n\nThe gdb.ada/file-then-restart.exp test was failing with gnat-llvm.  I\ntracked this down to the \"main\" name not being stored in a readonly\nsection, meaning that the code in ada_main_name using trust_readonly\ndid not work.\n\nHowever, it seems to me that gdb should always prefer the data from\nthe executable in this particular case.  So, rather than relying on\ntrust_readonly, this patch changes gdb to do this directly.\n\nApproved-By: Pedro Alves \u003cpedro@palves.net\u003e\n"
    },
    {
      "commit": "7023cf901ca6adb8a6ffa46b9856bc95eb78ed85",
      "tree": "425bf37488bb8e48821cbc81cdf1eed75be11abd",
      "parents": [
        "34c9c92f083751f30ab2ecf2a9ab6f3576c0989c"
      ],
      "author": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Mon Aug 03 14:13:56 2026 +0200"
      },
      "committer": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Mon Aug 03 14:13:56 2026 +0200"
      },
      "message": "[gdb/testsuite] Don\u0027t return -1 from top-level\n\nReplace:\n...\nif {\u003ccond\u003e} {\n   return -1\n}\n...\nwith:\n...\nif {\u003ccond\u003e} {\n   return\n}\n...\n\nSee also commit 51f8decb2fc (\"GDB: testsuite: TUI: Don\u0027t return -1 from\ntop-level (sed)\").\n\nGenerated by a script written by Claude Code.\n\nTested on x86_64-linux and aarch64-linux.\n\nApproved-By: Andrew Burgess \u003caburgess@redhat.com\u003e\n"
    },
    {
      "commit": "34c9c92f083751f30ab2ecf2a9ab6f3576c0989c",
      "tree": "4087a26ac7af815c10a96057bad8b5f66949edcf",
      "parents": [
        "5c78aef60cb49014bdc4881a6b7e3d1d4525aa26"
      ],
      "author": {
        "name": "Andrew Burgess",
        "email": "aburgess@redhat.com",
        "time": "Mon Aug 03 12:53:27 2026 +0100"
      },
      "committer": {
        "name": "Andrew Burgess",
        "email": "aburgess@redhat.com",
        "time": "Mon Aug 03 13:06:07 2026 +0100"
      },
      "message": "sim: avoid segfault in sim/cris/sim-if.c\n\nWhen GDB is built with --target\u003dcris-elf and launched with \"gdb\n./a.out\", typing \"target sim\" causes a crash.  The issue is that\nSTATE_PROG_ARGV may return NULL, and in sim_open this isn\u0027t tested\nbefore dereferencing the pointer.\n\nApproved-By: Andrew Burgess \u003caburgess@redhat.com\u003e\n"
    },
    {
      "commit": "5c78aef60cb49014bdc4881a6b7e3d1d4525aa26",
      "tree": "4de783232d03485e03a4edf06b90b78bb6bc65e2",
      "parents": [
        "4222a82bb594c22ff390f1c48e02c04fdd0ba89b"
      ],
      "author": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Mon Aug 03 10:20:04 2026 +0200"
      },
      "committer": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Mon Aug 03 10:20:04 2026 +0200"
      },
      "message": "[gdb/testsuite] Fix gdb.base/msym-lang.exp on ppc64-linux\n\nOn x86_64-linux, with test-case gdb.base/msym-lang.exp we get:\n...\n(gdb) info func foo\nAll functions matching regular expression \"foo\":\n\nNon-debugging symbols:\n0x0000000000401116  foo()\n0x000000000040112c  foo()\n(gdb) PASS: $exp: info func foo\n...\n\nBut on ppc64-linux, we get:\n...\n(gdb) info func foo\nAll functions matching regular expression \"foo\":\n\nNon-debugging symbols:\n0x0000000000000914  .foo()\n0x0000000000000974  .foo()\n(gdb) FAIL: $exp: info func foo\n...\n\nThe dot prefix is due to the function descriptors used in the PPC v1 ABI.\n\nFix this by allowing the dot prefix.\n\nTested on x86_64-linux and ppc64-linux.\n\nApproved-By: Kevin Buettner \u003ckevinb@redhat.com\u003e\n"
    },
    {
      "commit": "4222a82bb594c22ff390f1c48e02c04fdd0ba89b",
      "tree": "c79d306141d4335df0744d316a765d89d3da9e51",
      "parents": [
        "eec04c6d7a07a2069feab27a583108f33454f61b"
      ],
      "author": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Mon Aug 03 10:20:04 2026 +0200"
      },
      "committer": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Mon Aug 03 10:20:04 2026 +0200"
      },
      "message": "[gdb/testsuite] Fix gdb.base/examine-address-class.exp for big endian\n\nOn ppc64-linux and s390x-linux, with test-case\ngdb.base/examine-address-class.exp I get:\n...\n(gdb) x/1dh (int *) \u0026var^M\n0x3fffffffe560: 0^M\n(gdb) FAIL: $exp: x/1dh (int *) \u0026var\n...\n\nThis is caused by big vs. little endian.\n\nOn x86_64-linux (little endian), we have:\n...\n(gdb) p /x ((short *)\u0026var)[0]\n$6 \u003d 0x2a\n(gdb) p /x ((short *)\u0026var)[1]\n$7 \u003d 0x0\n(gdb)\n...\n\nAnd on ppc64-linux (big endian), we have:\n...\n(gdb) p /x ((short *)\u0026var)[0]\n$2 \u003d 0x0\n(gdb) p /x ((short *)\u0026var)[1]\n$3 \u003d 0x2a\n...\n\nFix this by assigning 0x002a002a to var, making sure that\n((short *)\u0026var)[0] \u003d\u003d ((short *)\u0026var)[1] \u003d\u003d 42.\n\nTested on x86_64-linux, ppc64-linux and s390x-linux.\n\nApproved-By: Kevin Buettner \u003ckevinb@redhat.com\u003e\n"
    },
    {
      "commit": "eec04c6d7a07a2069feab27a583108f33454f61b",
      "tree": "b4369d5c78e13c7e1ed486e2d75471b2e6c6cd1c",
      "parents": [
        "f829baa323d253a7c20c05d3c75a972d39c8afd1"
      ],
      "author": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Mon Aug 03 10:15:03 2026 +0200"
      },
      "committer": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Mon Aug 03 10:15:03 2026 +0200"
      },
      "message": "[pre-commit] Bump tclint to 0.9.0\n\nRan \"pre-commit autoupdate\".  No changes in formatting.\n"
    },
    {
      "commit": "f829baa323d253a7c20c05d3c75a972d39c8afd1",
      "tree": "b76742d25bf5526d721b94eda6e9d1a486a3fd08",
      "parents": [
        "0cdae10e5786da5d9128c9faaeb640130b041513"
      ],
      "author": {
        "name": "GDB Administrator",
        "email": "gdbadmin@sourceware.org",
        "time": "Mon Aug 03 00:00:08 2026 +0000"
      },
      "committer": {
        "name": "GDB Admin",
        "email": "brobecker@adacore.com",
        "time": "Mon Aug 03 00:00:08 2026 +0000"
      },
      "message": "Automatic date update in version.in\n"
    },
    {
      "commit": "0cdae10e5786da5d9128c9faaeb640130b041513",
      "tree": "2fabd659c1867e3ae3986386accd1000f7be9151",
      "parents": [
        "dde72c6764ecdd5a6af7295c1087c87bbaa7cfec"
      ],
      "author": {
        "name": "Alan Modra",
        "email": "amodra@gmail.com",
        "time": "Sun Aug 02 21:28:33 2026 +0930"
      },
      "committer": {
        "name": "Alan Modra",
        "email": "amodra@gmail.com",
        "time": "Sun Aug 02 21:32:00 2026 +0930"
      },
      "message": "memory mayhem in _bfd_elf_link_read_relocs\n\nCommit c6291d749a broke linking of objects with both REL and RELA\nrelocations applying to the same section.  Unfortunately there appears\nto be no test for this in the testsuite: The test added along with the\noriginal support in commit 19dd00f891 verified creation of such\nobjects, but not their use as linker inputs.  If you do take the\noutput of ld-tic6x/pcrel-reloc-local-r-rel-rela.d and feed it through\nanother ld -r stage, you typically get malloc/free corruption aborts.\nThe problem is that the REL buffer is being reused for RELA.\n\nCommit 3a8864b3aa neglected to update the function comment.\n\nThis patch fixes both of these problems and extends the tic6c testcase\nwith a trick to insert an extra ld -r link stage.\n\nbfd/\n\t* elflink.c (_bfd_elf_link_info_read_relocs): Correct function\n\tdescription.  Correct buffer handling for the case where both\n\trel.hdr and rela.hdr are non-NULL.  Rename variables for clarity.\nld/\n\t* testsuite/ld-tic6x/pcrel-reloc-local-r-rel-rela.d: Add an\n\textra ld -r stage.\n"
    },
    {
      "commit": "dde72c6764ecdd5a6af7295c1087c87bbaa7cfec",
      "tree": "499b4206c1a59ddc5624a413c900c1c32c775d71",
      "parents": [
        "99e6cde739b4e8413c92d657edca86f3df07f841"
      ],
      "author": {
        "name": "GDB Administrator",
        "email": "gdbadmin@sourceware.org",
        "time": "Sun Aug 02 00:00:08 2026 +0000"
      },
      "committer": {
        "name": "GDB Admin",
        "email": "brobecker@adacore.com",
        "time": "Sun Aug 02 00:00:08 2026 +0000"
      },
      "message": "Automatic date update in version.in\n"
    },
    {
      "commit": "99e6cde739b4e8413c92d657edca86f3df07f841",
      "tree": "9c21fb7c40b9307a00b05ecb6af5854a9c1a346a",
      "parents": [
        "5b805c95e9399e35f7bc895ec5b67aabdbc6ce41"
      ],
      "author": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Sat Aug 01 15:26:19 2026 +0200"
      },
      "committer": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Sat Aug 01 15:26:19 2026 +0200"
      },
      "message": "[gdb/testsuite] Drop global decls at global level\n\nWhile reviewing a patch I came across:\n...\nglobal srcdir\n...\n\nThis is only required in a proc, so this is superfluous.\n\nDelete similar cases using:\n...\n$ find gdb/testsuite/gdb.* -name *.exp | xargs sed -i \u0027/^global /d\u0027\n...\n\nTested on x86_64-linux.\n\nApproved-By: Luis Machado \u003cluis.machado.foss@gmail.com\u003e\n"
    },
    {
      "commit": "5b805c95e9399e35f7bc895ec5b67aabdbc6ce41",
      "tree": "de5ae3c95c4bd01b9251bcc037e9c4e282d73e55",
      "parents": [
        "f100243d1f102567e639d9e0c2c3da3185835b54"
      ],
      "author": {
        "name": "GDB Administrator",
        "email": "gdbadmin@sourceware.org",
        "time": "Sat Aug 01 00:00:08 2026 +0000"
      },
      "committer": {
        "name": "GDB Admin",
        "email": "brobecker@adacore.com",
        "time": "Sat Aug 01 00:00:08 2026 +0000"
      },
      "message": "Automatic date update in version.in\n"
    },
    {
      "commit": "f100243d1f102567e639d9e0c2c3da3185835b54",
      "tree": "3767da903cbe5fc02ee2888a3f2c8217967a5b39",
      "parents": [
        "ee7506d8ffbec39df2262f08a348346914d71efd"
      ],
      "author": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Fri Jul 31 16:50:15 2026 +0200"
      },
      "committer": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Fri Jul 31 16:50:15 2026 +0200"
      },
      "message": "[gdb/testsuite] Fix gdb.python/py-finish-breakpoint-tailcall.exp with gcc 16\n\nOn openSUSE Leap 16.0, with gcc 15.3.0, for test-case\ngdb.python/py-finish-breakpoint-tailcall.exp I get:\n...\n(gdb) python MyFinishBreakpoint(frame)\nTemporary breakpoint 2 at 0x40102a: file py-finish-breakpoint-tailcall.c, \\\n  line 43.\n(gdb) PASS: $exp: parent_frame\u003dtrue: create finish breakpoint\n...\n\nAnd on openSUSE Tumbleweed, with gcc 16.1.1 I get instead:\n...\n(gdb) python MyFinishBreakpoint(frame)\nTemporary breakpoint 2 at 0x40102a: file py-finish-breakpoint-tailcall.c, \\\n   line 44.\n(gdb) FAIL: $exp: parent_frame\u003dtrue: create finish breakpoint\n...\n\nThe only difference is in the line numbers, 43 and 44, both in main:\n...\n    39\tint\n    40\tmain (void)\n    41\t{\n    42\t  int result \u003d tailcall_function (42);\n    43\t  result -\u003d global_var;  /* Temporary breakpoint here.  */\n    44\t  return result;\n    45\t}\n...\n\nThe executable is compiled with O2, and the code for main is different.\n\nWith gcc 15, we have:\n...\n0000000000401020 \u003cmain\u003e:\n  401020:       bf 2a 00 00 00          mov    $0x2a,%edi\n  401025:       e8 26 01 00 00          call   401150 \u003ctailcall_function\u003e\n  40102a:       8b 15 e0 2f 00 00       mov    0x2fe0(%rip),%edx\n  401030:       29 d0                   sub    %edx,%eax\n  401032:       c3                      ret\n...\nand the line number associated with 0x40102a, the first instruction after the\ncall is 43:\n...\nFile name                        Line number  Starting address    View    Stmt\npy-finish-breakpoint-tailcall.c           43          0x40102a               x\n...\n\nWith gcc 16, the mov and sub have been merged:\n...\n0000000000401020 \u003cmain\u003e:\n  401020:       bf 2a 00 00 00          mov    $0x2a,%edi\n  401025:       e8 26 01 00 00          call   401150 \u003ctailcall_function\u003e\n  40102a:       2b 05 e0 2f 00 00       sub    0x2fe0(%rip),%eax\n  401030:       c3                      ret\n...\nand the line number info is different:\n...\nFile name                        Line number  Starting address    View    Stmt\npy-finish-breakpoint-tailcall.c           43          0x40102a               x\npy-finish-breakpoint-tailcall.c           44          0x40102a       1       x\npy-finish-breakpoint-tailcall.c           43          0x40102a       2\n...\nand gdb picks 44 in this case.\n\nFix this by merging lines 43 and 44 in the test-case:\n...\n-  result -\u003d global_var;  /* Temporary breakpoint here.  */\n-  return result;\n+  return result - global_var;  /* Temporary breakpoint here.  */\n...\n\nTested on x86_64-linux.\n\nI\u0027ve also verified that reverting the fix in commit e6bdfed6f5d (\"gdb: fix\nframe_unwind_caller_WHAT functions for inline and tail calls\"), the commit\nthat introduced the test-case still makes the test-case fail.\n\nApproved-By: Andrew Burgess \u003caburgess@redhat.com\u003e\n\nBug: https://sourceware.org/bugzilla/show_bug.cgi?id\u003d33989\n"
    },
    {
      "commit": "ee7506d8ffbec39df2262f08a348346914d71efd",
      "tree": "90bd7180f82c2b3a454d55eb2a9566fb1e99173a",
      "parents": [
        "b485a7268a4ec59669f735ddbbc41c4025e56dab"
      ],
      "author": {
        "name": "LIU Hao",
        "email": "lh_mouse@126.com",
        "time": "Fri Jul 31 13:52:14 2026 +0200"
      },
      "committer": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 13:52:14 2026 +0200"
      },
      "message": "ld: Prevent `_tls_used` and `_load_config_used` from being garbage-collected\n\nIn mingw-w64 there\u0027s an ongoing effort to make the TLS directory of an image\noptional and only linked on demand. The approach is to have the entrypoint\nfunction reference TLS initialization callbacks through function pointers as\ntentative definitions, and the object files where TLS initialization callbacks\nare defined should ensure `_tls_used` is linked, by referencing its address in\nfile-scope static pointers.\n\nThe issue here is that data sections of those object files are not referenced\notherwise. During linking, if LD is passed `--gc-sections`, it garbage-collects\nsuch sections along with `_tls_used`, leaving a symbol of value zero, which\nresults in a broken executable:\n\n   $ objdump -p bin/test_thread_id_cpp.exe | grep -F .tls\n   Entry 9 ffffffffc0000000 00000028 Thread Storage Directory [.tls]\n\nThis patch prevents `_tls_used` from being garbage-collected, and likewise for\n`_load_config_used`.\n\nSigned-off-by: LIU Hao \u003clh_mouse@126.com\u003e\n"
    },
    {
      "commit": "b485a7268a4ec59669f735ddbbc41c4025e56dab",
      "tree": "325e941a04918c148805f2ce1b48d1c5161849ba",
      "parents": [
        "787a99680e72c076ad87b580f3de1a37b48598eb"
      ],
      "author": {
        "name": "Zhongteng Gui",
        "email": "dragon-archer@outlook.com",
        "time": "Fri Jul 31 13:51:52 2026 +0200"
      },
      "committer": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 13:51:52 2026 +0200"
      },
      "message": "ld: avoid install ldscripts/stamp\n\nThis patch fixes a mistake from 07f9535fd97025705f17b65f39f6d7d6f0633add,\nwhich actually failed to exclude ldscripts/stamp from install.\n\nld/\n\n\t* Makefile.am (install-data-local): Exclude */stamp from install.\n\t* Makefile.in: Regenerate.\n\nSigned-off-by: Zhongteng Gui \u003cdragon-archer@outlook.com\u003e\n"
    },
    {
      "commit": "787a99680e72c076ad87b580f3de1a37b48598eb",
      "tree": "cb5ba4abec4acf80453136a1fddd70621f646348",
      "parents": [
        "01425f0623b914dffc05a4911513b381494533f6"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 13:50:58 2026 +0200"
      },
      "committer": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 13:50:58 2026 +0200"
      },
      "message": "RISC-V/bfd: warn about non-power-of-2 stack-align attribute\n\nOnly power-of-2 values are sensible for alignment. Reject other values.\n\nWhile there also drop a redundant part of a related conditional.\n\nReviewed-by: Jiawei jiawei@iscas.ac.cn\n"
    },
    {
      "commit": "01425f0623b914dffc05a4911513b381494533f6",
      "tree": "aff01230a0be6a41e86e1c1606da0a67e18ba812",
      "parents": [
        "57be7c7e108b7f21ad3cb7485535eef641dd585b"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 13:50:44 2026 +0200"
      },
      "committer": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 13:50:44 2026 +0200"
      },
      "message": "RISC-V/bfd: warn about non-boolean unaligned-access attribute\n\nThe attribute being a boolean one, incoming values should be solely 0 or\n1. Convert other non-zero values to 1.\n\nReviewed-by: Jiawei jiawei@iscas.ac.cn\n"
    },
    {
      "commit": "57be7c7e108b7f21ad3cb7485535eef641dd585b",
      "tree": "7ba78fe65418292af188e90abe1adf9c09b47edd",
      "parents": [
        "2a59bbe368765ea2defffd81219a0f32c437a5fd"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 13:50:26 2026 +0200"
      },
      "committer": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 13:50:26 2026 +0200"
      },
      "message": "RISC-V/gas: warn about non-power-of-2 stack-align attribute\n\nOnly power-of-2 values are sensible for alignment.\n\nReviewed-by: Jiawei \u003cjiawei@iscas.ac.cn\u003e\n"
    },
    {
      "commit": "2a59bbe368765ea2defffd81219a0f32c437a5fd",
      "tree": "239eaca233d6f26c32bf71946f110569a52a9468",
      "parents": [
        "8b67c66bea0fbfd84fff8cfee905eb576eda9b2b"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 13:49:24 2026 +0200"
      },
      "committer": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 13:50:00 2026 +0200"
      },
      "message": "RISC-V/gas: warn about non-boolean unaligned-access attribute\n\nThe attribute being a boolean one, values should be solely 0 or 1.\n\nReviewed-by: Jiawei \u003cjiawei@iscas.ac.cn\u003e\n"
    },
    {
      "commit": "8b67c66bea0fbfd84fff8cfee905eb576eda9b2b",
      "tree": "9127245f335e80567d84f5bcbdf5c96fc24f129f",
      "parents": [
        "0c9151fab17d1c944c8f1cd0fc8afdaea42fb9a2"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 13:49:06 2026 +0200"
      },
      "committer": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 13:49:06 2026 +0200"
      },
      "message": "RISC-V/gas: .attribute vs .insn\n\n\"... before any instruction\", as the diagnostic from s_riscv_attribute()\nsays, presumably ought to include also insns resulting from .insn. Make a\nsmall helper function.\n\nReviewed-by: Jiawei \u003cjiawei@iscas.ac.cn\u003e\n"
    },
    {
      "commit": "0c9151fab17d1c944c8f1cd0fc8afdaea42fb9a2",
      "tree": "77722bd3f74fb71ce219d9d0d9fc13f08c9b6eac",
      "parents": [
        "0aa268acc97528c98434c787ab479f89fef12c10"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 11:52:08 2026 +0200"
      },
      "committer": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 11:52:08 2026 +0200"
      },
      "message": "RISC-V: check operands for Zqinx\n\nBy analogy to Zdinx on RV32, register pair operands are presumably (there\nnot being any formal spec afaict) required to be encoded with the low bit\nclear in RV64; in RV32 the low two bits need to be clear. Since match\nfunctions don\u0027t have XLEN available, introduce respective flags, to be\nused explicitly in assembler and disassembler.\n"
    },
    {
      "commit": "0aa268acc97528c98434c787ab479f89fef12c10",
      "tree": "9737e0ff36b8c9f6ac78c768765f0cbc4e369fa7",
      "parents": [
        "e3b311f634aee8c36e788c154e42b40e836fa19b"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 11:51:12 2026 +0200"
      },
      "committer": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 11:51:12 2026 +0200"
      },
      "message": "RISC-V: check operands for Zdinx in RV32\n\nLike for Zilsd, register pair operands are required to be encoded with the\nlow bit clear. Since match functions don\u0027t have XLEN available, introduce\nrespective flags, to be used explicitly in assembler and disassembler.\n"
    },
    {
      "commit": "e3b311f634aee8c36e788c154e42b40e836fa19b",
      "tree": "e15d063e805a325ce0e5c460c456801d09c534d1",
      "parents": [
        "58cf9b25854e30d5241abc70daf2e99c6f426194"
      ],
      "author": {
        "name": "Jan Dubiec",
        "email": "jdx@o2.pl",
        "time": "Fri Jul 31 10:58:03 2026 +0200"
      },
      "committer": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 10:58:03 2026 +0200"
      },
      "message": "ld: Skip pr33265-2 and pr33265-3 tests on Windows hosts\n\nThese test cases are expected to fail on Windows because by default maximum\npath length is only 260 characters.\n\nSigned-off-by: Jan Dubiec \u003cjdx@o2.pl\u003e\n"
    },
    {
      "commit": "58cf9b25854e30d5241abc70daf2e99c6f426194",
      "tree": "1ec45a11ab854aa44557eeb00b1cf7128b074a8b",
      "parents": [
        "a592a6684708cb1554850b2cae311b4240838fe8"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 10:57:36 2026 +0200"
      },
      "committer": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 10:57:36 2026 +0200"
      },
      "message": "RISC-V: make FP rounding mode an optional operand\n\nModel this after Vm (and somewhat after its VM counterpart): It\u0027s similarly\nalways last, and we can hence similarly reduce the number of entries in the\nopcode table. The exception being FCVTMOD.W.D, where M needs using.\n"
    },
    {
      "commit": "a592a6684708cb1554850b2cae311b4240838fe8",
      "tree": "6376bff15199a157e8b6d03acd2c3638d438a33e",
      "parents": [
        "a7f98255a62f8efc94c7d19af6e52366d455b2ee"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 10:57:20 2026 +0200"
      },
      "committer": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 10:57:20 2026 +0200"
      },
      "message": "RISC-V: drop FCVT.Q.L{,U} forms with rounding mode operand\n\nLike FCVT.D.W{,U} and FCVT.Q.W{,U} these also are unaffected by rounding\nmode, and hence allowing for a respective operand is bogus. (Otherwise\nMASK_RM should also be used in the match field for the respectively other\nforms.)\n"
    },
    {
      "commit": "a7f98255a62f8efc94c7d19af6e52366d455b2ee",
      "tree": "f9bab74b8a451dd50842cb4e6931eb86e036b3b1",
      "parents": [
        "8abc2377c240a8182f225aa3766d225caa6fa4cd"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 10:56:53 2026 +0200"
      },
      "committer": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 10:56:53 2026 +0200"
      },
      "message": "RISC-V: replace INSN_V_EEW64\n\nIntroduce INSN_CLASS_ZVE64X instead, making the respective insns (and\ndiagnostics on their inappropriate use) less special.\n"
    },
    {
      "commit": "8abc2377c240a8182f225aa3766d225caa6fa4cd",
      "tree": "8ee5a2b228d3405f698dba9e80d6378e8ba5bcc1",
      "parents": [
        "0d25304ad9be210280636df65a4e18788ec657f5"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 10:56:32 2026 +0200"
      },
      "committer": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 10:56:32 2026 +0200"
      },
      "message": "bfd/RISC-V: Zve{32,64}f don\u0027t need to explicitly imply Zvl{32,64}b\n\nThe former referencing Zve{32,64}x already ensures the wanted implication.\nNo need to perform excess processing.\n"
    },
    {
      "commit": "0d25304ad9be210280636df65a4e18788ec657f5",
      "tree": "f8eddcbb00bfd248c5fef907fcd41ac2ba091cac",
      "parents": [
        "50c8bd0f88de6522f1308807062d19cbb5b61538"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 10:56:13 2026 +0200"
      },
      "committer": {
        "name": "Jan Beulich",
        "email": "jbeulich@suse.com",
        "time": "Fri Jul 31 10:56:13 2026 +0200"
      },
      "message": "bfd/RISC-V: Zv{b,k}* imply Zve32x\n\nThe specification is quite explicit about this. Since only forward\nreferences are permitted within the table, the pre-existing Zv{b,k} block\nneeds moving up.\n"
    },
    {
      "commit": "50c8bd0f88de6522f1308807062d19cbb5b61538",
      "tree": "775064965da963959ec8c0954d53f870678817e2",
      "parents": [
        "b46f479ff693935f2c5cf9fa2f5d30a4949b1919"
      ],
      "author": {
        "name": "Aditya Kamath",
        "email": "Aditya.Kamath1@ibm.com",
        "time": "Fri Jul 31 12:49:27 2026 +0530"
      },
      "committer": {
        "name": "Alan Modra",
        "email": "amodra@gmail.com",
        "time": "Fri Jul 31 17:59:49 2026 +0930"
      },
      "message": "Add support to recognise 32 bit core file formats in AIX 7.3\n\nIn AIX 7.3 when we take core dump and analyse we get,\ngdb/gdb /tmp/crash32 -c /tmp/core\n...\nReading symbols from /tmp/crash32...\n\"/tmp/core\" is not a core dump: file format not recognized\n\nThe reason being BFD is not able to recognise the same.\n"
    },
    {
      "commit": "b46f479ff693935f2c5cf9fa2f5d30a4949b1919",
      "tree": "578a533c4846ecf008314bf957c2bcfa875eb885",
      "parents": [
        "fa11363bc9ad30671372670ec5216c723ab4db42"
      ],
      "author": {
        "name": "Alan Modra",
        "email": "amodra@gmail.com",
        "time": "Thu Jul 30 14:54:23 2026 +0930"
      },
      "committer": {
        "name": "Alan Modra",
        "email": "amodra@gmail.com",
        "time": "Fri Jul 31 17:55:11 2026 +0930"
      },
      "message": "Remove BFD64 checks from rs6000-core.c\n\nOn a 32-bit system it is possible to build binutils with\n--enable-64-bit-bfd or with --enable-targets choosing extra targets\nthat require a 64-bit bfd.  So all of the BFD64 tests added in commit\nd6867a7559 and further modified in commit f03265d9cd are bogus, in\nparticular the removal of code by #ifndef BFD64.  It looks to me that\nthis would break reading of core files in rs6000-aix4.2 or earlier.\n\nBesides removing the BFD64 ifdefs this patch also initialises c_extoff\nin a !CORE_NEW code path.\n"
    },
    {
      "commit": "fa11363bc9ad30671372670ec5216c723ab4db42",
      "tree": "a80c59edf07d87e268bcd3078b43f2f256bcbe0f",
      "parents": [
        "676d620900e69fd414db2c418013caf028c3eebe"
      ],
      "author": {
        "name": "Nick Clifton",
        "email": "nickc@redhat.com",
        "time": "Fri Jul 31 09:06:09 2026 +0100"
      },
      "committer": {
        "name": "Nick Clifton",
        "email": "nickc@redhat.com",
        "time": "Fri Jul 31 09:06:09 2026 +0100"
      },
      "message": "Ensure that sframe_xlate_ctx_cleanup() doe snot leave any dangling pointers\n"
    },
    {
      "commit": "676d620900e69fd414db2c418013caf028c3eebe",
      "tree": "3da70484123bed1a7327a9d12f3c0003b9ee577d",
      "parents": [
        "6d1be0b90e837e4c82eaaf6f9e8c7da7227902e1"
      ],
      "author": {
        "name": "GDB Administrator",
        "email": "gdbadmin@sourceware.org",
        "time": "Fri Jul 31 00:00:08 2026 +0000"
      },
      "committer": {
        "name": "GDB Admin",
        "email": "brobecker@adacore.com",
        "time": "Fri Jul 31 00:00:08 2026 +0000"
      },
      "message": "Automatic date update in version.in\n"
    },
    {
      "commit": "6d1be0b90e837e4c82eaaf6f9e8c7da7227902e1",
      "tree": "224136ac50574e4c8dcf58d80bb5214bc340c609",
      "parents": [
        "a43228481e49294815f544651ca167f2409f118b"
      ],
      "author": {
        "name": "Tankut Baris Aktemur",
        "email": "tankutbaris.aktemur@amd.com",
        "time": "Thu Jul 30 18:44:51 2026 +0200"
      },
      "committer": {
        "name": "Tankut Baris Aktemur",
        "email": "tankutbaris.aktemur@amd.com",
        "time": "Thu Jul 30 18:44:51 2026 +0200"
      },
      "message": "gdb, dwarf: update complaint logic in read_tag_pointer_type\n\nThere is nested branching in `read_tag_pointer_type` with non-trivial\nconditions.  I think what is meant there is if there is a non-default\naddress class attribute for the type, alignment and size changes are\nacceptable.  Otherwise we should check for unexpected size and\nalignment, and complain about them.  This patch updates the logic.\n\nIn particular:\n\n - If addr_class is default, byte_size does not match the expectation,\n   and the architecture defines the address_class_dwarf_to_id hook\n   method, code before the patch does not complain about pointer size\n   whereas the new code complains.\n\n - If addr_class is non-default, byte_size does not match the\n   expectation, and the architecture does not define the\n   address_class_dwarf_to_id hook method, code before the patch\n   complains about pointer size whereas the code after does not\n   complain.\n\n(Similar cases for alignment mismatch instead of type size, too.)\n\nI think the new behavior is what was intended and it yields simpler\ncode.\n\nApproved-By: Tom Tromey \u003ctom@tromey.com\u003e\n"
    },
    {
      "commit": "a43228481e49294815f544651ca167f2409f118b",
      "tree": "0e0484fe84e4f0608e3ddbf9d54bd01f55c440b0",
      "parents": [
        "d1268210b6f6eddd267a4ebe4b7d36b802af628d"
      ],
      "author": {
        "name": "Tankut Baris Aktemur",
        "email": "tankutbaris.aktemur@amd.com",
        "time": "Thu Jul 30 18:44:51 2026 +0200"
      },
      "committer": {
        "name": "Tankut Baris Aktemur",
        "email": "tankutbaris.aktemur@amd.com",
        "time": "Thu Jul 30 18:44:51 2026 +0200"
      },
      "message": "gdb, dwarf: update code style in read_tag_pointer_type\n\nUpdate the code style in read_tag_pointer_type to match current\npractices.\n\nThe declared type of `byte_size` is changed to ULONGEST because we are\nreading an unsigned constant.\n\nApproved-By: Tom Tromey \u003ctom@tromey.com\u003e\n"
    },
    {
      "commit": "d1268210b6f6eddd267a4ebe4b7d36b802af628d",
      "tree": "84f27b2dadd09161a23bbd60cb3026d246ef4631",
      "parents": [
        "0d22d419a4b60672acf5555f5479fcf6956018a1"
      ],
      "author": {
        "name": "H.J. Lu",
        "email": "hjl.tools@gmail.com",
        "time": "Thu Jul 30 15:10:36 2026 +0800"
      },
      "committer": {
        "name": "H.J. Lu",
        "email": "hjl.tools@gmail.com",
        "time": "Thu Jul 30 18:55:11 2026 +0800"
      },
      "message": "ld: Don\u0027t define section symbols for excluded sections\n\nWhen the SEC_EXCLUDE bit is set on a section, for example, sections with\nthe SHF_EXCLUDE flag bit set in ELF input, the contents of the section\nare excluded by the linker for non-relocatable output.  Define  __start,\n__stop, .startof. and .sizeof. symbols for relocatable link or if the\nSEC_EXCLUDE bit on the section is cleared.\n\n\tPR ld/34448\n\t* ldlang.c (lang_init_start_stop): Call lang_define_start_stop\n\tfor relocatable link or if the SEC_EXCLUDE bit on the section\n\tis cleared.\n\nSigned-off-by: H.J. Lu \u003chjl.tools@gmail.com\u003e\n"
    },
    {
      "commit": "0d22d419a4b60672acf5555f5479fcf6956018a1",
      "tree": "bdf60d32cf678f6c87e8b0367c4e6e3ef3b4d1f8",
      "parents": [
        "bc40f2247c7f1601168bbf892f25dba92f4a71be"
      ],
      "author": {
        "name": "Alan Modra",
        "email": "amodra@gmail.com",
        "time": "Thu Jul 30 15:02:21 2026 +0930"
      },
      "committer": {
        "name": "Alan Modra",
        "email": "amodra@gmail.com",
        "time": "Thu Jul 30 15:02:21 2026 +0930"
      },
      "message": "Re: PR 30308 more unbounded recursion\n\nCommit 85fb82cc8c had some errors.  The extra places marking and\nclearing syms as resolving didn\u0027t take into account that the sym might\nalready be so marked and thus should not be cleared.  Fixing that\ncured the first testcase addition, but not the second.  Even worse is\nthat fact that marking X_add_symbol when trying to simplify\nX_op_symbol would make it impossible to simplify x\u003d\u003dx or other such\nexpressions where the symbols are the same (or the same via equates,\nmaking a test for X_add_symbol !\u003d X_op_symbol harder).  So commit\n85fb82cc8c needs reverting.\n\nWhen I analysed what was going on with the second testcase addition,\nand reanalysed the testcase added in commit 85fb82cc8c, I decided a\nbetter fix was to immediately fail on hitting a symbol loop;  It was\nthe simplification done in i386_intel_simplify_symbol after hitting a\nsymbol loop that made the \"resolving\" mark set on syms insufficient.\n\n\t* config/tc-i386-intel.c (i386_intel_simplify_symbol): Return\n\tNULL on finding symbol loops.\n\t(i386_intel_simplify): Revert commit 85fb82cc8c marking and\n\tclearing \"resolved\" for X_add_symbol.  For O_add, don\u0027t\n\tsimplify after i386_intel_simplify_symbol returns NULL.\n\t* testsuite/gas/i386/intel-equ-loop.l,\n\t* testsuite/gas/i386/intel-equ-loop.s: Extend testcase.\n"
    },
    {
      "commit": "bc40f2247c7f1601168bbf892f25dba92f4a71be",
      "tree": "a0059e4a713f0efa133b281a232a28388427c462",
      "parents": [
        "7a40b4d6306587e19850afc65170634375c37c2c"
      ],
      "author": {
        "name": "GDB Administrator",
        "email": "gdbadmin@sourceware.org",
        "time": "Thu Jul 30 00:00:07 2026 +0000"
      },
      "committer": {
        "name": "GDB Admin",
        "email": "brobecker@adacore.com",
        "time": "Thu Jul 30 00:00:07 2026 +0000"
      },
      "message": "Automatic date update in version.in\n"
    },
    {
      "commit": "7a40b4d6306587e19850afc65170634375c37c2c",
      "tree": "a60ec3517958149af8c1cd3a3e67c0433b395d77",
      "parents": [
        "53902b30c66ad5edc95db93e8d5c1cb3c29d684d"
      ],
      "author": {
        "name": "H.J. Lu",
        "email": "hjl.tools@gmail.com",
        "time": "Thu Jul 30 06:43:39 2026 +0800"
      },
      "committer": {
        "name": "H.J. Lu",
        "email": "hjl.tools@gmail.com",
        "time": "Thu Jul 30 06:43:39 2026 +0800"
      },
      "message": "testsuite/gas/i386/plt.d: Don\u0027t hard-code offset\n\n\tPR gas/34423\n\t* testsuite/gas/i386/plt.d: Replace \"offset 0xd4\" with\n\t\"offset 0x[0-9a-f]+.\".\n\nSigned-off-by: H.J. Lu \u003chjl.tools@gmail.com\u003e\n"
    },
    {
      "commit": "53902b30c66ad5edc95db93e8d5c1cb3c29d684d",
      "tree": "7351c82ac0d7f14f817dcd790d02d05e46d8a941",
      "parents": [
        "933a5bf71939ba2fda55e7010008b06231f0f82f"
      ],
      "author": {
        "name": "H.J. Lu",
        "email": "hjl.tools@gmail.com",
        "time": "Fri Jul 24 07:01:35 2026 +0800"
      },
      "committer": {
        "name": "H.J. Lu",
        "email": "hjl.tools@gmail.com",
        "time": "Thu Jul 30 04:45:55 2026 +0800"
      },
      "message": "x86: Generate PLT32 relocation for \".long foo@PLT - .L4\"\n\nLLVM assembler supports directives like \".long foo@PLT - .L4\" for i386\nand x86-64.  Implement the same feature to generate PLT32 relocation\nfor directives like \".long foo@PLT - .L4\" so that PLT entries are used\nto resolve the PC32 relocation against function symbols.\n\nbfd/\n\n\tPR gas/34423\n\t* elf32-i386.c (elf_i386_reloc_type_lookup): Handle\n\tBFD_RELOC_386_PC32_TO_PLT32.\n\t* elf64-x86-64.c (x86_64_reloc_map): Add\n\tBFD_RELOC_X86_64_PC32_TO_PLT32.\n\t* reloc.c (bfd_reloc_code_real): Add BFD_RELOC_386_PC32_TO_PLT32\n\tand BFD_RELOC_X86_64_PC32_TO_PLT32.\n\t* bfd-in2.h: Regenerated.\n\t* libbfd.h: Likewise.\n\ngas/\n\n\tPR gas/34423\n\t* config/tc-i386.c (x86_cons): Return\n\tBFD_RELOC_X86_64_PC32_TO_PLT32 or BFD_RELOC_386_PC32_TO_PLT32\n\tfor directives like \".long foo@PLT - .L4\".\n\t(md_apply_fix): Compute addend for BFD_RELOC_386_PC32_TO_PLT32.\n\t(tc_gen_reloc): Handle BFD_RELOC_X86_64_PC32_TO_PLT32 and\n\tBFD_RELOC_386_PC32_TO_PLT32.  Compute addend like\n\tBFD_RELOC_32_PCREL for BFD_RELOC_X86_64_PC32_TO_PLT32.\n\t* testsuite/gas/i386/i386.exp: Run plt test.\n\t* testsuite/gas/i386/ilp32/reloc64.l: Updated.\n\t* testsuite/gas/i386/ilp32/reloc64.s: Replace \".long xtrn@plt - .\"\n\twith \".long xtrn@plt - _start\".\n\t* testsuite/gas/i386/ilp32/x86-64-jump-table.d: New file.\n\t* testsuite/gas/i386/plt.d: Likewise.\n\t* testsuite/gas/i386/plt.s: Likewise.\n\t* testsuite/gas/i386/reloc32.l: Updated.\n\t* testsuite/gas/i386/reloc32.s: Replace \".long xtrn@plt - .\"\n\twith \".long xtrn@plt - _start\".\n\t* testsuite/gas/i386/reloc64.l: Updated.\n\t* testsuite/gas/i386/reloc64.s: Replace \".long xtrn@plt - .\" with\n\t\".long xtrn@plt - ptr\".\n\t* testsuite/gas/i386/x86-64-jump-table.d: New file.\n\t* testsuite/gas/i386/x86-64-jump-table.d: Likewise.\n\t* testsuite/gas/i386/x86-64-jump-table.s: Likewise.\n\t* testsuite/gas/i386/x86-64.exp: Run x86-64-jump-table.\n\nld/\n\n\tPR gas/34423\n\t* testsuite/ld-x86-64/pr34423.c: New file.\n\t* testsuite/ld-x86-64/x86-64-jump-table.s: Likewise.\n\t* testsuite/ld-x86-64/x86-64.exp: Run gas/34423 tests.\n\nSigned-off-by: H.J. Lu \u003chjl.tools@gmail.com\u003e\n"
    },
    {
      "commit": "933a5bf71939ba2fda55e7010008b06231f0f82f",
      "tree": "a916ca79f444f3dbccdc65ffcbbc790d15c35e7f",
      "parents": [
        "36af47b3a8348b9ff9c717100c44049c6f3d6315"
      ],
      "author": {
        "name": "Georg-Johann Lay",
        "email": "avr@gjlay.de",
        "time": "Wed Jul 29 19:32:54 2026 +0200"
      },
      "committer": {
        "name": "Georg-Johann Lay",
        "email": "avr@gjlay.de",
        "time": "Wed Jul 29 19:42:42 2026 +0200"
      },
      "message": "AVR: Fix comment typos in bfd/elf32-avr.c.\n\nbfd/\n\t* elf32-avr.c: Fix typos in comments.\n"
    },
    {
      "commit": "36af47b3a8348b9ff9c717100c44049c6f3d6315",
      "tree": "520b0d950be855b178c92e220d878c1453661638",
      "parents": [
        "46a7f5580ebb8c6e0712ff83fbdfba658944ea01"
      ],
      "author": {
        "name": "Abhay Kandpal",
        "email": "abhay@linux.ibm.com",
        "time": "Wed Jul 29 08:20:33 2026 -0500"
      },
      "committer": {
        "name": "Abhay Kandpal",
        "email": "abhay@linux.ibm.com",
        "time": "Wed Jul 29 08:20:33 2026 -0500"
      },
      "message": "PowerPC: Fix compile command by reverting to default code model\n\nOn ppc64le, the \"compile\" command produces corrupted code when the\ncompiled expression takes the address of a symbol in the inferior.\nFor example:\n\n  (gdb) break -qualified main\n  (gdb) run\n  (gdb) compile code pmf \u003d \u0026A::get_var1\n  (gdb) x/2gx \u0026pmf\n  0x7fffffffeb68:  0x0000800010000d78  0x0000000000000000\n\nThe stored address is wrong: the low 32 bits are correct\n(0x10000d78, the true address of A::get_var1) but bit 47 is\nincorrectly set.  When the compiled code later calls through such a\npointer the inferior jumps to unmapped memory and receives SIGSEGV.\n\nCommit 533f04079c7 (\"[gdb] [rs6000] Add\nppc64_linux_gcc_target_options method.\") made ppc64 return an empty\nstring from gdbarch_gcc_target_options, overriding the\n\"-m64 -mcmodel\u003dlarge\" that default_gcc_target_options supplies for\n64-bit targets, so GCC uses -mcmodel\u003dmedium instead.\n\nWith the medium model, references to the inferior\u0027s symbols are\ncompiled as TOC-relative accesses using R_PPC64_TOC16_HA/LO\nrelocations, whose combined displacement is a signed 32-bit value\n(+/- 2GB).  GDB allocates the compiled module in the inferior with an\nmmap that the kernel places in the high mmap region (e.g. around\n0x7ffff7f30000), while the inferior\u0027s own text is low (e.g. around\n0x10000000).  The distance between them is close to 2^47, far beyond\nthe reach of a TOC16 relocation, so the displacement is silently\ntruncated to 32 bits, producing an address that is off by 2^47.\n\nRevert 533f04079c7 so that ppc64 again uses\ndefault_gcc_target_options (\"-m64 -mcmodel\u003dlarge\").  With the large\nmodel GCC emits a real .toc section and loads addresses as full\n64-bit values from it, so the only TOC-relative references are into\nthe module\u0027s own .toc, always in range wherever the module is mapped.\nThe .TOC. handling from commit bad23de3543 (\"[gdb] Handle .TOC.\nsections during gdb-compile for rs6000 target.\") still applies, now\nresolving via the genuine .toc section rather than the .text fallback\nthe medium model required.\n\nTested on powerpc64le-linux (Fedora, GCC 15.2.1).\n\nBug: https://sourceware.org/bugzilla/show_bug.cgi?id\u003d34456\n\ngdb/\n\t* ppc-linux-tdep.c (ppc64_linux_gcc_target_options): Remove.\n\t(ppc_linux_init_abi): Don\u0027t set gcc_target_options.\n"
    },
    {
      "commit": "46a7f5580ebb8c6e0712ff83fbdfba658944ea01",
      "tree": "90b09e5d15b42fe942e3c14eb10a810a4045c8db",
      "parents": [
        "cd02e2a209482dd9fa06945ffec0675da7dfd74e"
      ],
      "author": {
        "name": "GDB Administrator",
        "email": "gdbadmin@sourceware.org",
        "time": "Wed Jul 29 00:00:08 2026 +0000"
      },
      "committer": {
        "name": "GDB Admin",
        "email": "brobecker@adacore.com",
        "time": "Wed Jul 29 00:00:08 2026 +0000"
      },
      "message": "Automatic date update in version.in\n"
    },
    {
      "commit": "cd02e2a209482dd9fa06945ffec0675da7dfd74e",
      "tree": "25b7264cac220ec17e769a347f65367f79ab6e38",
      "parents": [
        "fc3afcdce4245d5a084bc84b8f048c7c610b0d8d"
      ],
      "author": {
        "name": "Rohr, Stephan",
        "email": "stephan.rohr@intel.com",
        "time": "Tue Jul 28 10:01:13 2026 +0200"
      },
      "committer": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Tue Jul 28 10:01:13 2026 +0200"
      },
      "message": "[pre-commit] add \u0027tomli\u0027 dependency for codespell pre-commit hook\n\nThe codespell pre-commit hook imports the \u0027tomllib\u0027 module to parse\n\u0027pyproject.toml\u0027.  \u0027tomllib\u0027 is not available for Python versions 3.10\nand older.  Add a dependency on \u0027tomli\u0027 so the hook also works on these\nPython versions.\n\nApproved-By: Tom de Vries \u003ctdevries@suse.de\u003e\n"
    },
    {
      "commit": "fc3afcdce4245d5a084bc84b8f048c7c610b0d8d",
      "tree": "5706a6b2264a22533598d6b46f8779b7676931e6",
      "parents": [
        "9dd9c10463a561aaeb7de78bdc8a8b4ad0138352"
      ],
      "author": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Tue Jul 28 09:43:51 2026 +0200"
      },
      "committer": {
        "name": "Tom de Vries",
        "email": "tdevries@suse.de",
        "time": "Tue Jul 28 09:43:51 2026 +0200"
      },
      "message": "[pre-commit] Add yamllint hook\n\nAdd pre-commit check linting .pre-commit-config.yaml using yamllint.\n\n[1] https://github.com/adrienverge/yamllint\n"
    }
  ],
  "next": "9dd9c10463a561aaeb7de78bdc8a8b4ad0138352"
}
