)]}'
{
  "commit": "6ef69b644ea98da590e3830a97a9fed3c3044ca3",
  "tree": "f4c5148b0fec4dd3497a42bc0ebe7fc57e3e9ba0",
  "parents": [
    "aefe058f869906315a7ba9c2638e258f13d65931"
  ],
  "author": {
    "name": "Kyrylo Tkachov",
    "email": "ktkachov@nvidia.com",
    "time": "Thu Aug 27 18:46:45 2026 +0200"
  },
  "committer": {
    "name": "Kyrylo Tkachov",
    "email": "ktkachov@nvidia.com",
    "time": "Wed Sep 16 17:09:22 2026 +0200"
  },
  "message": "lto: Rebuild saved parallel LTRANS outputs\n\nParallel LTRANS emits make targets without prerequisites.  With\n-save-temps, a later link can select the same output name.  Make then\naccepts the old object as current.  Profile generation followed by\nprofile use can therefore link an instrumented LTRANS object without\nlibgcov.\n\nMark each persistent non-cache LTRANS output as phony in the generated\nmakefile.  Make then runs its recipe for the current link.  Temporary\noutputs and LTRANS cache entries keep their current behavior.\n\nAdd a tree-profile test that forces parallel LTRANS with -flto\u003d2 and\nreuses the saved output name between profile generation and profile use.\n\nThe test reproduced the stale object failure on x86_64 before the change\nand passed after it.  On AArch64, this test and the six affected LTO\nprofile tests passed in both PGO and AutoFDO modes.\n\nBootstrapped and tested on aarch64-none-linux-gnu.\n\ngcc/ChangeLog:\n\n\t* lto-wrapper.cc (run_gcc): Make saved parallel LTRANS outputs phony.\n\ngcc/testsuite/ChangeLog:\n\n\t* gcc.dg/tree-prof/lto-save-temps-profile-use.c: New test.\n\nSigned-off-by: Kyrylo Tkachov \u003cktkachov@nvidia.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "bd25185c218e3dbfe83fca9e569d3f5a215994c1",
      "old_mode": 33188,
      "old_path": "gcc/lto-wrapper.cc",
      "new_id": "333f0ad1d1ddedccfd9e95324d198ff107285a70",
      "new_mode": 33188,
      "new_path": "gcc/lto-wrapper.cc"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "760dd7cfe739d9a1d77254099cadfbc42eb3333c",
      "new_mode": 33188,
      "new_path": "gcc/testsuite/gcc.dg/tree-prof/lto-save-temps-profile-use.c"
    }
  ]
}
