)]}'
{
  "commit": "daeda14191c1710ce967259a47ef4e0a3fb6eebf",
  "tree": "d812149875b5903fde600bb0e71a17f112b81df2",
  "parents": [
    "c7a5bea4c62f286df830418de694821c7617cccd"
  ],
  "author": {
    "name": "mengqinggang",
    "email": "mengqinggang@loongson.cn",
    "time": "Wed Jan 24 14:34:26 2024 +0800"
  },
  "committer": {
    "name": "liuzhensong",
    "email": "liuzhensong@loongson.cn",
    "time": "Sun Mar 31 14:21:00 2024 +0800"
  },
  "message": "BFD: Fix the bug of R_LARCH_AGLIN caused by discard section\n\nTo represent the first and third expression of .align, R_LARCH_ALIGN need to\nassociate with a symbol. We define a local symbol for R_LARCH_AGLIN.\nBut if the section of the local symbol is discarded, it may result in\na undefined symbol error.\n\nInstead, we use the section name symbols, and this does not need to\nadd extra symbols.\n\nDuring partial linking (ld -r), if the symbol associated with a relocation is\nSTT_SECTION type, the addend of relocation needs to add the section output\noffset. We prevent it for R_LARCH_ALIGN.\n\nThe elf_backend_data.rela_normal only can set all relocations of a target to\nrela_normal. Add a new function is_rela_normal to elf_backend_data, it can\nset part of relocations to rela_normal.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c5d325435b60a310844c9adc72bda9c66b64b4af",
      "old_mode": 33188,
      "old_path": "bfd/elf-bfd.h",
      "new_id": "af507b93df58ecdf18b780ee516849401af66b13",
      "new_mode": 33188,
      "new_path": "bfd/elf-bfd.h"
    },
    {
      "type": "modify",
      "old_id": "24eb30d19468b3a45eded4eae9f278bd0edac469",
      "old_mode": 33188,
      "old_path": "bfd/elflink.c",
      "new_id": "5d9b4092e48f4b952b53856dc2ea179c786cae1f",
      "new_mode": 33188,
      "new_path": "bfd/elflink.c"
    },
    {
      "type": "modify",
      "old_id": "c42052f93212159e3d597728c3363b5f44dffc0a",
      "old_mode": 33188,
      "old_path": "bfd/elfnn-loongarch.c",
      "new_id": "1679aa5da7d9eed9ec4816cdf36790f9ae568752",
      "new_mode": 33188,
      "new_path": "bfd/elfnn-loongarch.c"
    },
    {
      "type": "modify",
      "old_id": "1e6992b579304f24f8aaa658442bf28a49bb2b34",
      "old_mode": 33188,
      "old_path": "bfd/elfxx-target.h",
      "new_id": "6e2d948b69b2bc66c166f012e09842e6957f8e19",
      "new_mode": 33188,
      "new_path": "bfd/elfxx-target.h"
    },
    {
      "type": "modify",
      "old_id": "30aefce36fd44941086e2611b4062e2ba6604ff7",
      "old_mode": 33188,
      "old_path": "gas/config/tc-loongarch.c",
      "new_id": "6b1a89738efeb455cff9fc5d1930e987b939c552",
      "new_mode": 33188,
      "new_path": "gas/config/tc-loongarch.c"
    },
    {
      "type": "modify",
      "old_id": "fc1fd032611503122db18c0e166118e94d5dd1fd",
      "old_mode": 33188,
      "old_path": "gas/testsuite/gas/loongarch/relax_align.d",
      "new_id": "acd215a4abcacf319a79148f4f2286062a27f1d1",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/loongarch/relax_align.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4a81323d9267c8405834700d1b9b86ea7462af9e",
      "new_mode": 33188,
      "new_path": "ld/testsuite/ld-loongarch-elf/relax-align-discard.lds"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b65d63f370ff470da9209e57f067f9c9bb605440",
      "new_mode": 33188,
      "new_path": "ld/testsuite/ld-loongarch-elf/relax-align-discard.s"
    },
    {
      "type": "modify",
      "old_id": "7d95a9ca41dac51b1a9c46faf7563e957fd1be0e",
      "old_mode": 33188,
      "old_path": "ld/testsuite/ld-loongarch-elf/relax.exp",
      "new_id": "ed71fb45b46141c06040f4f5a87280d26c5c89ed",
      "new_mode": 33188,
      "new_path": "ld/testsuite/ld-loongarch-elf/relax.exp"
    }
  ]
}
