)]}'
{
  "commit": "0bb9d85fc7f86fe5bde091b68facbd72b005c286",
  "tree": "f13bfd3d33076fdba5aa248938d02a13580d8f40",
  "parents": [
    "5d58950c0d8fbe21051462db7572cba3c9b34a69"
  ],
  "author": {
    "name": "Simon Marchi",
    "email": "simon.marchi@polymtl.ca",
    "time": "Fri Mar 14 00:32:47 2025 -0400"
  },
  "committer": {
    "name": "Simon Marchi",
    "email": "simon.marchi@efficios.com",
    "time": "Fri Mar 14 12:23:38 2025 -0400"
  },
  "message": "gdb/dwarf: access m_info_ptr directly instead of passing info_ptr around\n\nThe few methods of cutu_reader that read DIEs into memory generally\nreceive an info_ptr that says where to start reading and return another\none (either by return value or parameter) indicating where the caller\nshould continue reading.\n\nWe can avoid all this passing around by having these methods access\nm_info_ptr directly.  This allows changing some methods that read DIEs\nto return `die_info *`, instead of returning it by parameter, which just\nmakes the code simpler to read, I think.\n\nThe only method that meaningfully reads and writes m_info_ptr (except\nthe places that initially set it up) is read_full_die_1.  It reads and\nincrements m_info_ptr once to read the abbrev and once again to read\neach attribute.  Other methods use it for logging.\n\nThe methods cutu_reader::read_attribute and\ncutu_reader::read_attribute_value do not touch m_info_ptr directly,\nbecause they are used in cooked-indexer.c, which appears to read some\nthings in a non-linear fashion, unlike cutu_reader\u0027s DIE-reading\nmethods.  The cooked indexer calls cutu_reader::info_ptr to get the\nm_info_ptr value just after the top-level DIE, and then it does its own\nattribute reading after that.\n\nChange-Id: I251f63d13d453a2827b21349760da033171880e2\nApproved-By: Tom Tromey \u003ctom@tromey.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3ff7a82f41e6e8a1f0ca2bf6447f62d50967a21f",
      "old_mode": 33188,
      "old_path": "gdb/dwarf2/read.c",
      "new_id": "cfd5efe27457e3621ac93db644dab4f3d4c0cb29",
      "new_mode": 33188,
      "new_path": "gdb/dwarf2/read.c"
    },
    {
      "type": "modify",
      "old_id": "a8d742855b81ce595f19ae035ec2b6cf72ebeab4",
      "old_mode": 33188,
      "old_path": "gdb/dwarf2/read.h",
      "new_id": "3f99b3931dc01bcb7dbf9f575ee8800b62fd226a",
      "new_mode": 33188,
      "new_path": "gdb/dwarf2/read.h"
    }
  ]
}
