)]}'
{
  "commit": "e9d059fc599c8322e2c54eb918a8f2e353d25435",
  "tree": "88ae70fc8de396470f0f4b43061d3c0c81f88e77",
  "parents": [
    "416e9b6b6547494c6afc344b7c9bd2814b71be37"
  ],
  "author": {
    "name": "Pali Rohár",
    "email": "pali.rohar@gmail.com",
    "time": "Fri Apr 19 18:54:27 2024 +0200"
  },
  "committer": {
    "name": "LIU Hao",
    "email": "lh_mouse@126.com",
    "time": "Mon Apr 22 10:34:15 2024 +0800"
  },
  "message": "crt: Fix _adj_fdiv_m* and _adj_fdivr_m* symbols\n\nCRT library functions _adj_fdiv_m* and _adj_fdivr_m* have custom calling\nconvention. These functions take two arguments. First argument is passed in\nx87 st(0) register and second argument on the stack (either 4 or 8 bytes).\nFunction itself pops the stack (like stdcall convention) and return value\nis stored in x87 st(0) register.\n\nCL.EXE compiler when invoked with flag /QIfdiv generates calls to these\nfunctions. Generated symbol names are without @SIZE suffix decoration.\n\nSo for compatibility with msvc, do not decorate these symbols with @SIZE\nsuffix (the suffix used for stdcall) in all def files.\n\nNote that neither gcc, nor clang does not provide a way to define C\nfunction declaration with this calling convention, so currently the only\nway how to call these functions from the assembler or via gcc inline\nassembly in C/C++. And therefore mingw-w64 does not provide declaration for\nthese functions in header files.\n\nSigned-off-by: LIU Hao \u003clh_mouse@126.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e39a0c1b8aac095af84184e92f3a460eedd91fe1",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/lib-common/msvcrt.def.in",
      "new_id": "b5b971d2052c1fc3746580ad3f0d0fce931e7bce",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/lib-common/msvcrt.def.in"
    },
    {
      "type": "modify",
      "old_id": "e80d2b68a5bcf6578ae420968705787f80230655",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/lib32/msvcr70.def.in",
      "new_id": "31d09fe9f92b73b6515ddbc48ba84cf534710989",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/lib32/msvcr70.def.in"
    },
    {
      "type": "modify",
      "old_id": "66c87d1dc6544dfa206c56b160d8fc7c158a406d",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/lib32/msvcr71.def.in",
      "new_id": "afd74527d065dabed0642c9b49b36c2dfc227dde",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/lib32/msvcr71.def.in"
    },
    {
      "type": "modify",
      "old_id": "254330b8b508ab3d5a7c36a0131405db2bda2e37",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/lib32/msvcr80.def.in",
      "new_id": "6073d4c582a2c6160fad8ea34262dafc2926ab59",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/lib32/msvcr80.def.in"
    },
    {
      "type": "modify",
      "old_id": "c5a70d3e9ce923d9c70101cd937971d5e6539de0",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/lib32/msvcr90.def.in",
      "new_id": "b0c6fb88dc43753cbc7637543331074189b36559",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/lib32/msvcr90.def.in"
    },
    {
      "type": "modify",
      "old_id": "ba7dffa1cdad56557982883f6f964557d6eedd5e",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/lib32/msvcr90d.def.in",
      "new_id": "3cdc83708fe631205e178f8f693a48cff75ed510",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/lib32/msvcr90d.def.in"
    },
    {
      "type": "modify",
      "old_id": "1ac4d4701ffd232f60453cd53a3b45fa9a599fc3",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/lib32/msvcrt20.def.in",
      "new_id": "4f7fcef1095667af0a9199031ca5caa4fe8dd6ef",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/lib32/msvcrt20.def.in"
    },
    {
      "type": "modify",
      "old_id": "2dbd8fc87276f4014105feb61b0044f64a6a3004",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/lib32/msvcrt40.def.in",
      "new_id": "da23d05698fc38ecc9f91b6f121cb70136ce326e",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/lib32/msvcrt40.def.in"
    }
  ]
}
