)]}'
{
  "commit": "0aa2e4ec963597794dd8f8b36f77f4d0cf4e03c8",
  "tree": "1b1f208e21d08f16f071a5ca6fe42f21af3fa7cb",
  "parents": [
    "9e99a55b317f5da66f5110891b154084b337a031"
  ],
  "author": {
    "name": "Michael Brown",
    "email": "mcb30@ipxe.org",
    "time": "Tue Sep 05 12:46:39 2023 +0100"
  },
  "committer": {
    "name": "Michael Brown",
    "email": "mcb30@ipxe.org",
    "time": "Tue Sep 05 12:47:42 2023 +0100"
  },
  "message": "[librm] Use explicit operand size when pushing a label address\n\nWe currently use \"push $1f\" within inline assembly to push the address\nof the real-mode code fragment, relying on the assembler to treat this\nas \"pushl\" for 32-bit code or \"pushq\" for 64-bit code.\n\nAs of binutils commit 5cc0077 (\"x86: further adjust extend-to-32bit-\naddress conditions\"), first included in binutils-2.41, this implicit\noperand size is no longer calculated as expected and 64-bit builds\nwill fail with\n\n  Error: operand size mismatch for `push\u0027\n\nFix by adding an explicit operand size to the \"push\" instruction.\n\nOriginally-fixed-by: Justin Cano \u003cjstncno@gmail.com\u003e\nSigned-off-by: Michael Brown \u003cmcb30@ipxe.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "5196d390faff0ad24a0d8d6bce0e3caf9bc56f80",
      "old_mode": 33188,
      "old_path": "src/arch/x86/include/librm.h",
      "new_id": "40f075439a26aee3896351fbd2a8f76c1318ea36",
      "new_mode": 33188,
      "new_path": "src/arch/x86/include/librm.h"
    }
  ]
}
