)]}'
{
  "commit": "b13c0682ab290166a4a4c25513fec96beab5e211",
  "tree": "5c158a13efc4f44cf1e2a821bb08477d1640c4a7",
  "parents": [
    "acaa441a98bebc5216334557cf8d09d63087ce37"
  ],
  "author": {
    "name": "Rishi Raj",
    "email": "rishiraj45035@gmail.com",
    "time": "Thu Jul 06 18:43:51 2023 +0530"
  },
  "committer": {
    "name": "Rishi Raj",
    "email": "rishiraj45035@gmail.com",
    "time": "Thu Jul 06 18:43:51 2023 +0530"
  },
  "message": "lto: Bypass assembler when generating LTO object files.\n\n    This patch applies Jan Hubicka previous patch on current sources.\n    Now compiler is able to produce object files without assembler although\n    a lot of things are missing such as __lto_slim symbol, debug symbols\n    etc. They will be added in future patches. To test this current patch,\n    use these command below.\n    1) ./xgcc -B ./ -O3 a.c -flto -S -fbypass-asm\u003dcrtbegin.o  -o a.o\n    2) ./xgcc -B ./ -O2 a.o -flto\n    3)  ./a.out\n\n    We are currntly working with elf-only support (mach-o, coff, xcoff etc\n    will be dealt later) so this will only work on a linux machine. I have tested\n    this on my machine ( Arch linux, Machine: Advanced Micro Devices X86-64) and\n    all LTO test cases passed as expected.\n\n    gcc/ChangeLog:\n\n            * Makefile.in:\n            * common.opt:\n            * langhooks.cc (lhd_begin_section):\n            (lhd_append_data):\n            (lhd_end_section):\n            * lto/lto-object.cc: Moved to...\n            * lto-object.cc: ...here.\n            * lto-streamer.h (struct lto_section_slot):\n            (struct lto_section_list):\n            (struct lto_file):\n            (lto_obj_file_open):\n            (lto_obj_file_close):\n            (lto_obj_build_section_table):\n            (lto_obj_create_section_hash_table):\n            (lto_obj_begin_section):\n            (lto_obj_append_data):\n            (lto_obj_end_section):\n            (lto_set_current_out_file):\n            (lto_get_current_out_file):\n            * toplev.cc (compile_file):\n            (lang_dependent_init):\n\n    gcc/lto/ChangeLog:\n\n            * Make-lang.in:\n            * lto-common.cc (lto_file_read):\n            * lto-lang.cc:\n            * lto.h (struct lto_file):\n            (lto_obj_file_open):\n            (lto_obj_file_close):\n            (struct lto_section_list):\n            (lto_obj_build_section_table):\n            (lto_obj_create_section_hash_table):\n            (lto_obj_begin_section):\n            (lto_obj_append_data):\n            (lto_obj_end_section):\n            (lto_set_current_out_file):\n            (lto_get_current_out_file):\n            (struct lto_section_slot):\n\nSigned-off-by: Rishi Raj \u003crishiraj45035@gmail.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c478ec852013eae65b9f3ec0a443e023c7d8b452",
      "old_mode": 33188,
      "old_path": "gcc/Makefile.in",
      "new_id": "c9ae222fb5955bd9a69fa888e28a511cf65d02c0",
      "new_mode": 33188,
      "new_path": "gcc/Makefile.in"
    },
    {
      "type": "modify",
      "old_id": "25f650e2dae465e859561b0ddc2b83b355388587",
      "old_mode": 33188,
      "old_path": "gcc/common.opt",
      "new_id": "ba7a18ece8c170c2952d6a6e58c72b9855e2658b",
      "new_mode": 33188,
      "new_path": "gcc/common.opt"
    },
    {
      "type": "modify",
      "old_id": "9a1a9eccca9639531b57237015cfc2942efc1475",
      "old_mode": 33188,
      "old_path": "gcc/langhooks.cc",
      "new_id": "a76ed974d58bfa14c2df9d954d263bc8b011c129",
      "new_mode": 33188,
      "new_path": "gcc/langhooks.cc"
    },
    {
      "type": "rename",
      "old_id": "965d31ed084ab9a7cbab075d8945bb2706497b12",
      "old_mode": 33188,
      "old_path": "gcc/lto/lto-object.cc",
      "new_id": "cb1c3a6cfb3417efd935889f2399eaceef215095",
      "new_mode": 33188,
      "new_path": "gcc/lto-object.cc",
      "score": 94
    },
    {
      "type": "modify",
      "old_id": "0556b34c837bdf12a09ea080ab715e707a8603d3",
      "old_mode": 33188,
      "old_path": "gcc/lto-streamer.h",
      "new_id": "0c8e5d663e2c0ecda6a66e8ceaa73f360488a44c",
      "new_mode": 33188,
      "new_path": "gcc/lto-streamer.h"
    },
    {
      "type": "modify",
      "old_id": "98aa9f4cc39a1541ea98c89bb837964fe476de29",
      "old_mode": 33188,
      "old_path": "gcc/lto/Make-lang.in",
      "new_id": "70144cea88e08fb4ce1016bcfc2c75b38c6b9670",
      "new_mode": 33188,
      "new_path": "gcc/lto/Make-lang.in"
    },
    {
      "type": "modify",
      "old_id": "703e665b698fd678566928389c1dc72eb4d135cc",
      "old_mode": 33188,
      "old_path": "gcc/lto/lto-common.cc",
      "new_id": "1ec488aaf59150121460178233e59a266dc5fbcb",
      "new_mode": 33188,
      "new_path": "gcc/lto/lto-common.cc"
    },
    {
      "type": "modify",
      "old_id": "14d419c2013d4b9babe09cce2d0cd425e639cacf",
      "old_mode": 33188,
      "old_path": "gcc/lto/lto-lang.cc",
      "new_id": "cf33bf178c2c3ece45a628cfa86592d924dad2c0",
      "new_mode": 33188,
      "new_path": "gcc/lto/lto-lang.cc"
    },
    {
      "type": "modify",
      "old_id": "810d6622688339da2fd2084eb748b7a45843ab45",
      "old_mode": 33188,
      "old_path": "gcc/lto/lto.h",
      "new_id": "4c3c84bf9b899ad165b7165a6930daecae27de2e",
      "new_mode": 33188,
      "new_path": "gcc/lto/lto.h"
    },
    {
      "type": "modify",
      "old_id": "6c1a6f443c16f83f5e76127499a6a8956c79ab29",
      "old_mode": 33188,
      "old_path": "gcc/toplev.cc",
      "new_id": "fec416336615fb59714ebf71b9bd9f104509f25e",
      "new_mode": 33188,
      "new_path": "gcc/toplev.cc"
    }
  ]
}
