)]}'
{
  "commit": "998d4443ea1e7da6ffa86abc95502152fda80f35",
  "tree": "1f4b8af6e4ad8343c7295aaddd4c0a4056f21f51",
  "parents": [
    "2adbf167cae8812417a38d834e6878540632e0b8"
  ],
  "author": {
    "name": "Alan Modra",
    "email": "amodra@gmail.com",
    "time": "Mon May 26 11:46:05 2025 +0930"
  },
  "committer": {
    "name": "Alan Modra",
    "email": "amodra@gmail.com",
    "time": "Tue May 27 09:02:12 2025 +0930"
  },
  "message": "ALPHA_R_OP_STORE\n\nIn commit db4ab410dec3 I rewrote OP_STORE handling to support writing\nnear the end of a section.  The rewrite had some bugs, fixed in commit\n3e02c4891dcb.  However I wasn\u0027t entirely happy with the code writing\nthe bitfield:\n- it doesn\u0027t support 64-bit fields with a bit offset,\n- the code is duplicated and inelegant,\n- the stack ought to be popped whenever seeing one of these relocs,\n  even if the reloc can\u0027t be applied.\nThis patch fixes all of the above.\n\nIn addition, it is clear from the OP_STORE description in the ABI that\na 64-bit field is encoded as 0 in r_size, so I\u0027ve decoded that in\nalpha_ecoff_swap_reloc_in.  The aborts there are not appropriate as\nthey can be triggered by user input (fuzzed object files).  Also,\nstack underflow wasn\u0027t checked in alpha_relocate_section.\n\n\t* coff-alpha.c (alpha_ecoff_swap_reloc_in): Replace aborts\n\twith asserts.  Decode ALPHA_R_OP_STORE r_size of zero.\n\t(write_bit_field): New function.\n\t(alpha_ecoff_get_relocated_section_contents): Use it.\n\t(alpha_relocate_section): Here too.  Catch stack underflow.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "60d85bbf7078e922ff80a5e0355aaca5508c8250",
      "old_mode": 33188,
      "old_path": "bfd/coff-alpha.c",
      "new_id": "fcc8aef66731ba385caea9535cab591d2443a9f8",
      "new_mode": 33188,
      "new_path": "bfd/coff-alpha.c"
    }
  ]
}
