)]}'
{
  "commit": "315a5cce89d8f15da5c47d85abbc8155b9c0f0b0",
  "tree": "14be834af68c522fe0cd28c8ce0cb15a44a91825",
  "parents": [
    "0768253c20402c8a7a357210923c6867efc0ef5c"
  ],
  "author": {
    "name": "Nick Desaulniers",
    "email": "nickdesaulniers@users.noreply.github.com",
    "time": "Tue Dec 19 11:05:12 2023 -0800"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Tue Dec 19 11:05:12 2023 -0800"
  },
  "message": "[libc] move __stack_chk_fail to src/ from startup/ (#75863)\n\n__stack_chk_fail should be provided by libc.a, not startup files.\r\n\r\nAdd __stack_chk_fail to existing linux and arm entrypoints. On Windows\r\n(when\r\nnot targeting MinGW), it seems that the corresponding function\r\nidentifier is\r\n__security_check_cookie, so no entrypoint is added for Windows.\r\nBaremetal\r\ntargets also ought to be compileable with `-fstack-protector*`\r\n\r\nThere is no common header for this prototype, since calls to\r\n__stack_chk_fail\r\nare meant to be inserted by the compiler upon function return when\r\ncompiled\r\n`-fstack-protector*`.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a88b7aa749e56540256ef79e4eba51ccfc0b66ff",
      "old_mode": 33188,
      "old_path": "libc/config/baremetal/arm/entrypoints.txt",
      "new_id": "a0779c41652aebcf5111f712f895ff63c29a0338",
      "new_mode": 33188,
      "new_path": "libc/config/baremetal/arm/entrypoints.txt"
    },
    {
      "type": "modify",
      "old_id": "3b7ca513eb0965a646520f0c490a4a296896f7ba",
      "old_mode": 33188,
      "old_path": "libc/config/baremetal/riscv/entrypoints.txt",
      "new_id": "3e15cc8901bddf2cd919b9034b346f3e6c572ca6",
      "new_mode": 33188,
      "new_path": "libc/config/baremetal/riscv/entrypoints.txt"
    },
    {
      "type": "modify",
      "old_id": "60e0e2b29aed36aa5099b2d6798fe598148013e1",
      "old_mode": 33188,
      "old_path": "libc/config/linux/aarch64/entrypoints.txt",
      "new_id": "77c9a50b8b7e5dbf72c6399ef45e584de8262ba2",
      "new_mode": 33188,
      "new_path": "libc/config/linux/aarch64/entrypoints.txt"
    },
    {
      "type": "modify",
      "old_id": "123c7e33377ad10df814f5f0b1847cc15e2703be",
      "old_mode": 33188,
      "old_path": "libc/config/linux/arm/entrypoints.txt",
      "new_id": "274d5aa5a0057d7a2d712597e78226ca5996bfd5",
      "new_mode": 33188,
      "new_path": "libc/config/linux/arm/entrypoints.txt"
    },
    {
      "type": "modify",
      "old_id": "948708e35f45d2d6b41824006ec576f5ded23eb0",
      "old_mode": 33188,
      "old_path": "libc/config/linux/riscv/entrypoints.txt",
      "new_id": "e389936ffca1ef391b124c1d2484ae4f93ef032f",
      "new_mode": 33188,
      "new_path": "libc/config/linux/riscv/entrypoints.txt"
    },
    {
      "type": "modify",
      "old_id": "1c93063e25e90c08c64857824e6333ec43c6016c",
      "old_mode": 33188,
      "old_path": "libc/config/linux/x86_64/entrypoints.txt",
      "new_id": "3adcd57d0c0849687c3875d91656491e3c6e3f24",
      "new_mode": 33188,
      "new_path": "libc/config/linux/x86_64/entrypoints.txt"
    },
    {
      "type": "modify",
      "old_id": "3ab62a4f667d2606784bd9fe9d452a6e17062888",
      "old_mode": 33188,
      "old_path": "libc/src/CMakeLists.txt",
      "new_id": "492f9c5bd50f9bcc4d4fb6df778d9864b22706b8",
      "new_mode": 33188,
      "new_path": "libc/src/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "aa59d84e08d14677002caf94619dd5ba42cc23b4",
      "new_mode": 33188,
      "new_path": "libc/src/compiler/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2e3d849ff8c67c0fbb245c022747fd603fcf2dea",
      "new_mode": 33188,
      "new_path": "libc/src/compiler/__stack_chk_fail.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "0d869b72a12cf51ddef35dad65fdbce80e4c09c2",
      "new_mode": 33188,
      "new_path": "libc/src/compiler/generic/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "0ca02071f2a997a3596c2813123a39b53e0f2a77",
      "new_mode": 33188,
      "new_path": "libc/src/compiler/generic/__stack_chk_fail.cpp"
    },
    {
      "type": "modify",
      "old_id": "c98f58a4ac0aff3e2a62b51a7f97de99c622cd7c",
      "old_mode": 33188,
      "old_path": "libc/startup/linux/x86_64/start.cpp",
      "new_id": "bc03a3cb1de27fdeefdce650c5e8b889619241b6",
      "new_mode": 33188,
      "new_path": "libc/startup/linux/x86_64/start.cpp"
    },
    {
      "type": "modify",
      "old_id": "c45b94f364397e3c3fdbca7d6db69a7edd72a588",
      "old_mode": 33188,
      "old_path": "libc/test/src/CMakeLists.txt",
      "new_id": "6bd8ace9ea71af016840fb46a4a3d405729e7dfe",
      "new_mode": 33188,
      "new_path": "libc/test/src/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b8d682c1c519a5e4713f887dcfbb1cbd75fcf53d",
      "new_mode": 33188,
      "new_path": "libc/test/src/compiler/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "1de2d1b7357f7072bf27ecd3a835031ea9d22a05",
      "new_mode": 33188,
      "new_path": "libc/test/src/compiler/stack_chk_guard_test.cpp"
    }
  ]
}
