)]}'
{
  "commit": "7e4208a3f5d60f43b4a8f02e583fa950b599cd00",
  "tree": "51527bda0762bed41dc6d0e953edf35ee0b8e4f2",
  "parents": [
    "0fd455766e7f1bd7df328e104281b49a5268677f"
  ],
  "author": {
    "name": "Tom de Vries",
    "email": "tdevries@suse.de",
    "time": "Tue Feb 13 09:10:54 2024 +0100"
  },
  "committer": {
    "name": "Tom de Vries",
    "email": "tdevries@suse.de",
    "time": "Tue Feb 13 09:10:54 2024 +0100"
  },
  "message": "[gdb/tdep] Fix reverse execution of LDR(immediate) T4\n\nWhen running test-case gdb.reverse/func-map-to-same-line.exp on arm-linux with\ntarget board unix/-mthumb, we run into:\n...\n(gdb) reverse-step\nfunc2 () at func-map-to-same-line.c:26\n26\t{\n(gdb) FAIL: gdb.reverse/func-map-to-same-line.exp: \\\n  column_info_flag\u003dcolumn-info: step-test: reverse-step into func2\n...\n\nThe FAIL is caused by incorrect recording of this insn:\n...\n4f6:   f85d 7b04       ldr.w   r7, [sp], #4\n...\n\nThe insn updates the sp, but we don\u0027t record this:\n...\n$ gdb -q -batch func-map-to-same-line \\\n  -ex \"b *func2+8\" \\\n  -ex run \\\n  -ex record \\\n  -ex \"set debug record 2\" \\\n  -ex stepi\nBreakpoint 1 at 0x4f6: file func-map-to-same-line.c, line 27.\n\nBreakpoint 1, 0xaaaaa4f6 in func2 () at func-map-to-same-line.c:27\n27\t} /* END FUNC2 */\nProcess record: arm_process_record addr \u003d 0xaaaaa4f6\nProcess record: add register num \u003d 15 to record list.\nProcess record: record_full_arch_list_add 0xabc6c460.\nProcess record: add register num \u003d 7 to record list.\nProcess record: record_full_arch_list_add 0xabc3b868.\nProcess record: add register num \u003d 25 to record list.\n...\n[ Note that sp is r13, and we see here only r15 (pc), r7, and r25 (ps). ]\n\nThe problem is that the specific insn, an LDR(immediate) T4, is not handled in\nthumb2_record_ld_word.\n\nFix this by detecting the insn in thumb2_record_ld_word, and recording the\nupdated base register.\n\nTested on arm-linux.\n\nReported-By: Thiago Jung Bauermann \u003cthiago.bauermann@linaro.org\u003e\nApproved-By: Luis Machado \u003cluis.machado@arm.com\u003e\n\nPR tdep/31278\nBug: https://sourceware.org/bugzilla/show_bug.cgi?id\u003d31278\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "861d50a6a3b0010cdd53e70d0628bb51db184ab7",
      "old_mode": 33188,
      "old_path": "gdb/arm-tdep.c",
      "new_id": "081e934cf8625536d774a8a4ed6c7002fdfbb0a0",
      "new_mode": 33188,
      "new_path": "gdb/arm-tdep.c"
    }
  ]
}
