)]}'
{
  "commit": "fc48504c7abe8eb9d9723632b2d53504927f46ff",
  "tree": "5bb639bd13167c7b5dbdb47174d776ff7f3472b9",
  "parents": [
    "a74ac8c41971682f687a8a5ce94f36a8054ecd0e"
  ],
  "author": {
    "name": "Szabolcs Nagy",
    "email": "szabolcs.nagy@arm.com",
    "time": "Wed Oct 18 16:12:56 2023 +0100"
  },
  "committer": {
    "name": "Szabolcs Nagy",
    "email": "szabolcs.nagy@arm.com",
    "time": "Thu Nov 09 14:44:37 2023 +0000"
  },
  "message": "bfd: aarch64: Avoid BTI stub for a PLT that has BTI\n\nWe decide to emit BTI stubs based on the instruction at the target\nlocation. But PLT code is generated later than the stubs so we always\nread 0 which is not a valid BTI.\n\nFix the logic to special case the PLT section: this is code the linker\ngenerates so we know when it will have BTI.\n\nThis avoids BTI stubs in large executables where the PLTs have them\nalready. An alternative is to never emit BTI stubs for PLTs, instead\nuse BTI in the PLT if a library gets too big, however that may be\nmore tricky given the ordering of PLT sizing and stub insertion.\n\nRelated to bug 30957.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3adece302507f4d57adb375d4b0ccc1ef559d864",
      "old_mode": 33188,
      "old_path": "bfd/elfnn-aarch64.c",
      "new_id": "4faf642b422ffdff5c7879bff6bd08991b38eab8",
      "new_mode": 33188,
      "new_path": "bfd/elfnn-aarch64.c"
    }
  ]
}
