)]}'
{
  "commit": "f4be26838dc9937a4ae3e9cf4fbec50efd7786a2",
  "tree": "ce206b7152f6f242e4a9e56e378b41f4ed5dd694",
  "parents": [
    "61a1f2e71118206dd700fc1ddf244b2178bf6610"
  ],
  "author": {
    "name": "H.J. Lu",
    "email": "hjl.tools@gmail.com",
    "time": "Mon Mar 14 14:46:25 2022 -0700"
  },
  "committer": {
    "name": "H.J. Lu",
    "email": "hjl.tools@gmail.com",
    "time": "Wed Mar 16 06:45:06 2022 -0700"
  },
  "message": "gprofng: Use symver attribute if available\n\nUse symver attribute if available, instead of asm statement, to support\nLTO build.\n\n\tPR gprof/28962\n\t* libcollector/dispatcher.c (timer_create@@GLIBC_2.3.3): Use\n\tSYMVER_ATTRIBUTE.\n\t(timer_create@GLIBC_2.2): Likewise.\n\t(timer_create@GLIBC_2.2.5): Likewise.\n\t(pthread_create@@GLIBC_2.1): Likewise.\n\t(pthread_create@GLIBC_2.0): Likewise.\n\t* libcollector/iotrace.c (open64@@GLIBC_2.2): Likewise.\n\t(open64@GLIBC_2.1): Likewise.\n\t(fopen@@GLIBC_2.1): Likewise.\n\t(fopen@GLIBC_2.0): Likewise.\n\t(fclose@@GLIBC_2.1): Likewise.\n\t(fclose@GLIBC_2.0): Likewise.\n\t(fdopen@@GLIBC_2.1): Likewise.\n\t(fdopen@GLIBC_2.0): Likewise.\n\t(pread@@GLIBC_2.2): Likewise.\n\t(pread@GLIBC_2.1): Likewise.\n\t(pwrite@@GLIBC_2.2): Likewise.\n\t(pwrite@GLIBC_2.1): Likewise.\n\t(pwrite64@@GLIBC_2.2): Likewise.\n\t(pwrite64@GLIBC_2.1): Likewise.\n\t(fgetpos@@GLIBC_2.2): Likewise.\n\t(fgetpos@GLIBC_2.0): Likewise.\n\t(fgetpos64@@GLIBC_2.2): Likewise.\n\t(fgetpos64@GLIBC_2.1): Likewise.\n\t(fsetpos@@GLIBC_2.2): Likewise.\n\t(fsetpos@GLIBC_2.0): Likewise.\n\t(fsetpos64@@GLIBC_2.2): Likewise.\n\t(fsetpos64@GLIBC_2.1): Likewise.\n\t* libcollector/linetrace.c (posix_spawn@@GLIBC_2.15): Likewise.\n\t(posix_spawn@GLIBC_2.2): Likewise.\n\t(posix_spawn@GLIBC_2.2.5): Likewise.\n\t(posix_spawnp@@GLIBC_2.15): Likewise.\n\t(posix_spawnp@GLIBC_2.2): Likewise.\n\t(posix_spawnp@GLIBC_2.2.5): Likewise.\n\t(popen@@GLIBC_2.1): Likewise.\n\t(popen@GLIBC_2.0): Likewise.\n\t(_popen@@GLIBC_2.1): Likewise.\n\t(_popen@GLIBC_2.0): Likewise.\n\t* libcollector/mmaptrace.c (dlopen@@GLIBC_2.1): Likewise.\n\t(dlopen@GLIBC_2.0): Likewise.\n\t* libcollector/synctrace.c (pthread_cond_wait@@GLIBC_2.3.2):\n\tLikewise.\n\t(pthread_cond_wait@GLIBC_2.0): Likewise.\n\t(pthread_cond_wait@GLIBC_2.2.5): Likewise.\n\t(pthread_cond_wait@GLIBC_2.2): Likewise.\n\t(pthread_cond_timedwait@@GLIBC_2.3.2): Likewise.\n\t(pthread_cond_timedwait@GLIBC_2.0): Likewise.\n\t(pthread_cond_timedwait@GLIBC_2.2.5): Likewise.\n\t(pthread_cond_timedwait@GLIBC_2.2): Likewise.\n\t(sem_wait@@GLIBC_2.1): Likewise.\n\t(sem_wait@GLIBC_2.0): Likewise.\n\t* src/collector_module.h (SYMVER_ATTRIBUTE): New.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f9a7de1ec9896a4ff72db94c6765169dc83d9170",
      "old_mode": 33188,
      "old_path": "gprofng/libcollector/dispatcher.c",
      "new_id": "f0308605d766f7f358327735f3de0ff57a3dfd95",
      "new_mode": 33188,
      "new_path": "gprofng/libcollector/dispatcher.c"
    },
    {
      "type": "modify",
      "old_id": "462ccf2d99e0c40b02e3a268cb943b979303fca7",
      "old_mode": 33188,
      "old_path": "gprofng/libcollector/iotrace.c",
      "new_id": "9b47724bab915b4de50a7b75b6e133569258b81e",
      "new_mode": 33188,
      "new_path": "gprofng/libcollector/iotrace.c"
    },
    {
      "type": "modify",
      "old_id": "970d68c507bee811661182e34016ba84e21b6f4e",
      "old_mode": 33188,
      "old_path": "gprofng/libcollector/linetrace.c",
      "new_id": "978c5503e2e80ce30fead797ba742226cefdc4ed",
      "new_mode": 33188,
      "new_path": "gprofng/libcollector/linetrace.c"
    },
    {
      "type": "modify",
      "old_id": "ac5c9970952bfe6dddf312c62c5c9b9d767f94bb",
      "old_mode": 33188,
      "old_path": "gprofng/libcollector/mmaptrace.c",
      "new_id": "bf3294d484375137cd73fc5b68950ccaef40f0b3",
      "new_mode": 33188,
      "new_path": "gprofng/libcollector/mmaptrace.c"
    },
    {
      "type": "modify",
      "old_id": "401c8f2d7d04eac3365cc61a72105696597025b4",
      "old_mode": 33188,
      "old_path": "gprofng/libcollector/synctrace.c",
      "new_id": "969c681d842c5cc0f39785146450ea3b03349f33",
      "new_mode": 33188,
      "new_path": "gprofng/libcollector/synctrace.c"
    },
    {
      "type": "modify",
      "old_id": "512af7a6a519e0455b8a499a1b3baeafc6f59e9f",
      "old_mode": 33188,
      "old_path": "gprofng/src/collector_module.h",
      "new_id": "f608dab58314676bf3b69eb3ea2e06a2b198ca8b",
      "new_mode": 33188,
      "new_path": "gprofng/src/collector_module.h"
    }
  ]
}
