)]}'
{
  "commit": "2299dfd4ba96c6852db862f6ec1b96880ecd6c0c",
  "tree": "2cec04c6b5e9a2416697851a0072857f0b0dd5bd",
  "parents": [
    "07d74e51ba8691826b3bc758c2f7d2c1283e4d9b"
  ],
  "author": {
    "name": "Frank Ch. Eigler",
    "email": "fche@redhat.com",
    "time": "Thu Sep 19 17:06:48 2024 -0400"
  },
  "committer": {
    "name": "Frank Ch. Eigler",
    "email": "fche@redhat.com",
    "time": "Tue Sep 24 09:59:42 2024 -0400"
  },
  "message": "ld: support --build-id\u003dxx mode\n\nThe is patch adds a new ld build-id computation mode, \"xx\", using\nxxhash in its 128-bit mode.  The patch prereqs the xxhash-devel\nheaders being installed, and uses the \"all-inlined\" model, so no\nrun-time or link-time library dependence exists.\n\nThe xxhash mode performs well, saving roughly 20% of total userspace\nrun time from an ld job over a 800MB shared library relative to sha1.\n128 bits of good hash should be collision-resistant to a number of\ndistinct binaries that numbers in the 2**32 - 2**64 range, even if not\n\"crypto\" level hash.  Confirmations of this are in progress.\n\n         ld/configury: add --with-xxhash mode, different from gdb case\n                       because only using it in inline mode\n\n         ld/ldbuildid.c: add \"xx\" mode, #if WITH_XXHASH\n\n         ld/NEWS, ld.texi: mention new option\n\n         ld/lexsup.c: add enumeration of --build-id STYLES to --help\n\n         ld/testsuite/ld-elf/build-id.exp: add test case for 0xHEX case\n                                           and conditional for xx case;\n                                           also, simply tcl list syntax\n\nhttps://inbox.sourceware.org/binutils/20240917201509.GB26396@redhat.com/\n\nSigned-off-by: Frank Ch. Eigler \u003cfche@redhat.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "bad8c3e334d604b93f703bf37be1e4f43347b756",
      "old_mode": 33188,
      "old_path": "ld/NEWS",
      "new_id": "1f14dd6bc77b83d75d18f748048370ad5aa6a8f2",
      "new_mode": 33188,
      "new_path": "ld/NEWS"
    },
    {
      "type": "modify",
      "old_id": "f7c9da3d02acba946f0390e56f33882245234883",
      "old_mode": 33188,
      "old_path": "ld/config.in",
      "new_id": "f2aaf0a6879c6606a5d623898053679afcd480c2",
      "new_mode": 33188,
      "new_path": "ld/config.in"
    },
    {
      "type": "modify",
      "old_id": "bf582146e41ac307fbf4d512098cdcfd5162e4ad",
      "old_mode": 33261,
      "old_path": "ld/configure",
      "new_id": "af1b0d9274315d33ac47509ff6e9e5c480289f9a",
      "new_mode": 33261,
      "new_path": "ld/configure"
    },
    {
      "type": "modify",
      "old_id": "bdf51a062fa0729e52a6a546ef9a19c5f2ae3831",
      "old_mode": 33188,
      "old_path": "ld/configure.ac",
      "new_id": "5d10b38a528f00673b2190901f7cb36b1ebb7738",
      "new_mode": 33188,
      "new_path": "ld/configure.ac"
    },
    {
      "type": "modify",
      "old_id": "24dcf9db9193a8bde28ba156fb2c136a562eb500",
      "old_mode": 33188,
      "old_path": "ld/ld.texi",
      "new_id": "90182c436ecac71a227b5d6796d90935484a3711",
      "new_mode": 33188,
      "new_path": "ld/ld.texi"
    },
    {
      "type": "modify",
      "old_id": "5ba9e503c7c3af4a06f04f8e50affd0a5ba4a473",
      "old_mode": 33188,
      "old_path": "ld/ldbuildid.c",
      "new_id": "2571f1afd0079447c8d3383350fa90065d9e6cf3",
      "new_mode": 33188,
      "new_path": "ld/ldbuildid.c"
    },
    {
      "type": "modify",
      "old_id": "4aa0124ce2fb1c043bb8733c90d0fb5a03fe5aea",
      "old_mode": 33188,
      "old_path": "ld/lexsup.c",
      "new_id": "8982073bc9114e324ebb2b13aef91aca66d4b5e1",
      "new_mode": 33188,
      "new_path": "ld/lexsup.c"
    },
    {
      "type": "modify",
      "old_id": "1bf258bfe67b42ac28d03073edc2e7f1dc0c5d91",
      "old_mode": 33188,
      "old_path": "ld/testsuite/ld-elf/build-id.exp",
      "new_id": "6bf8f3d91f3c0ea5bfde2762a96e296d08f4fcf7",
      "new_mode": 33188,
      "new_path": "ld/testsuite/ld-elf/build-id.exp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "15157ba8f39f20837e39c34e0493ecdcf86f1e44",
      "new_mode": 33188,
      "new_path": "ld/testsuite/ld-elf/pr28639e.rd"
    }
  ]
}
