)]}'
{
  "commit": "658ba81aef5e85a08d67eb211a43c6db775a36b3",
  "tree": "e30b2f29188986cd78114d6ac2bc0cbf36487498",
  "parents": [
    "1a51864b467c2d65bd37c3bc9cbab2cf1ee6a039"
  ],
  "author": {
    "name": "Max Filippov",
    "email": "jcmvbkbc@gmail.com",
    "time": "Tue Aug 23 05:25:55 2022 -0700"
  },
  "committer": {
    "name": "Max Filippov",
    "email": "jcmvbkbc@gmail.com",
    "time": "Fri Sep 02 09:54:49 2022 -0700"
  },
  "message": "xtensa: bfd: fix TLS relocations generated for PIE\n\nWhen generating TLS dynamic relocations the existing xtensa BFD code\ntreats linking to a PIE exactly as linking to a shared object, resulting\nin generation of wrong relocations for TLS entries. Fix that and add\ntests.\n\nbfd/\n\t* elf32-xtensa.c (elf_xtensa_check_relocs): Use bfd_link_dll\n\tinstead of bfd_link_pic. Add elf_xtensa_dynamic_symbol_p test\n\twhen generating GOT entries.\n\t(elf_xtensa_relocate_section): Use bfd_link_dll instead of\n\tbfd_link_pic.\nld/\n\t* testsuite/ld-xtensa/tlspie.dd: New file.\n\t* testsuite/ld-xtensa/tlspie.rd: New file.\n\t* testsuite/ld-xtensa/tlspie.sd: New file.\n\t* testsuite/ld-xtensa/tlspie.td: New file.\n\t* testsuite/ld-xtensa/xtensa-linux.exp (TLS PIE transitions):\n\tNew test.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "bf72c85ca4a06407da0d36e024986dff7ee96dc1",
      "old_mode": 33188,
      "old_path": "bfd/elf32-xtensa.c",
      "new_id": "31e2d7448b0e319d62af2a20494b2ed1cdbb3e7b",
      "new_mode": 33188,
      "new_path": "bfd/elf32-xtensa.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d04fa98947f5ddd0a2625701b6d68f18a3f35dee",
      "new_mode": 33188,
      "new_path": "ld/testsuite/ld-xtensa/tlspie.dd"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "078f9e48e0cce66dae5de00b0e9a1b1e0a6ad514",
      "new_mode": 33188,
      "new_path": "ld/testsuite/ld-xtensa/tlspie.rd"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "484db07e2a0d731dc3d1be2dd868027096843550",
      "new_mode": 33188,
      "new_path": "ld/testsuite/ld-xtensa/tlspie.sd"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "efef45c9410a4143170a46ab0a85c1a5ae4ec6dd",
      "new_mode": 33188,
      "new_path": "ld/testsuite/ld-xtensa/tlspie.td"
    },
    {
      "type": "modify",
      "old_id": "192d9b4b4ac4f313a56a502c295d1a58ebe53ad8",
      "old_mode": 33188,
      "old_path": "ld/testsuite/ld-xtensa/xtensa-linux.exp",
      "new_id": "491a30f43e62a4dec80376c9b38f7224586507f6",
      "new_mode": 33188,
      "new_path": "ld/testsuite/ld-xtensa/xtensa-linux.exp"
    }
  ]
}
