)]}'
{
  "commit": "fa4f2d46f95a1c673b025fab7f292cb864a99020",
  "tree": "5088fff05a1d5527433ee61f9bba052bf9bd1afa",
  "parents": [
    "c99853f48cd9132c5a745ad7452d1b0d856f32b8"
  ],
  "author": {
    "name": "Peter Edwards",
    "email": "peadar@arista.com",
    "time": "Tue Aug 22 19:57:28 2023 +0100"
  },
  "committer": {
    "name": "H.J. Lu",
    "email": "hjl.tools@gmail.com",
    "time": "Wed Aug 23 09:10:16 2023 -0700"
  },
  "message": "x86: Fix DT_JMPREL/DT_PLTRELSZ when relocs share a section\n\nIf a linker script does not place the PLT relocations and \"normal\"\nrelocations in separate ELF sections, `ld` will currently output incorrect\nvalues for DT_JMPREL and DT_PLTRELSZ - they cover the entire ELF section,\nrather than just the PLT relocations\n\nDon\u0027t ignore the extent of the BFD section - use the size of the srelplt\nBFD section and its offset from the output_secttion\n\nbfd/\n\n\tPR ld/30787\n\t* elfxx-x86.c (_bfd_x86_elf_finish_dynamic_sections): Use input\n\tsection for DT_JMPREL and DT_PLTRELSZ.\n\nld/\n\n\tPR ld/30787\n\t* testsuite/ld-i386/i386.exp: Run pr30787.\n\t* testsuite/ld-x86-64/x86-64.exp: Likewise.\n\t* testsuite/ld-i386/pr30787.d: New file.\n\t* testsuite/ld-i386/pr30787.s: Likewise.\n\t* testsuite/ld-i386/pr30787.t: Likewise.\n\t* testsuite/ld-x86-64/pr30787.d: Likewise.\n\t* testsuite/ld-x86-64/pr30787.s: Likewise.\n\t* testsuite/ld-x86-64/pr30787.t: Likewise.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f224e8f1354dfa76e1a0b3d6bd3944930f9ae597",
      "old_mode": 33188,
      "old_path": "bfd/elfxx-x86.c",
      "new_id": "103559d77ecf9e897fd3f0e27b52e6e0ad82010f",
      "new_mode": 33188,
      "new_path": "bfd/elfxx-x86.c"
    },
    {
      "type": "modify",
      "old_id": "5f53bcf29bc85231f489c4fe4236c3497f13e00c",
      "old_mode": 33188,
      "old_path": "ld/testsuite/ld-i386/i386.exp",
      "new_id": "e8ad973eb36027a30b0a7c4ed3c486b16bd8f252",
      "new_mode": 33188,
      "new_path": "ld/testsuite/ld-i386/i386.exp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f82411da8b77ce6150f92d31e9a5cd51ae2395f0",
      "new_mode": 33188,
      "new_path": "ld/testsuite/ld-i386/pr30787.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "71594d2327e7b334d11a17d214b3f145860b33c4",
      "new_mode": 33188,
      "new_path": "ld/testsuite/ld-i386/pr30787.s"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8c476209cba27008b6c2a0572e03a7429a4b9162",
      "new_mode": 33188,
      "new_path": "ld/testsuite/ld-i386/pr30787.t"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "29102d4cc2ca7042637f5930701d754d0584c751",
      "new_mode": 33188,
      "new_path": "ld/testsuite/ld-x86-64/pr30787.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8bc774f131202c03066f82d67910b114d0e76830",
      "new_mode": 33188,
      "new_path": "ld/testsuite/ld-x86-64/pr30787.s"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "66759cbb6a60bd8f9db8afb986ba5a50a1e9f751",
      "new_mode": 33188,
      "new_path": "ld/testsuite/ld-x86-64/pr30787.t"
    },
    {
      "type": "modify",
      "old_id": "1a10c395b5ce0555381d4fab9248a2dad960bf64",
      "old_mode": 33188,
      "old_path": "ld/testsuite/ld-x86-64/x86-64.exp",
      "new_id": "f94284b079c66f3da7db33a4ead34d4e7b17bfef",
      "new_mode": 33188,
      "new_path": "ld/testsuite/ld-x86-64/x86-64.exp"
    }
  ]
}
