)]}'
{
  "commit": "5210977a8511fc0c4a8a1a68c01fa3b65e29edc0",
  "tree": "dd12f3bcc62297f325c30718c6d42764dff0afd6",
  "parents": [
    "49e6637386acb8824114ed10308ed7869472ec0f"
  ],
  "author": {
    "name": "Igor Kovalenko",
    "email": "igor.v.kovalenko@gmail.com",
    "time": "Sun Jul 12 12:35:31 2009 +0400"
  },
  "committer": {
    "name": "Blue Swirl",
    "email": "blauwirbel@gmail.com",
    "time": "Sun Jul 12 08:46:54 2009 +0000"
  },
  "message": "sparc64: trap handling corrections\n\nOn Sun, Jul 12, 2009 at 12:09 PM, Blue Swirl\u003cblauwirbel@gmail.com\u003e wrote:\n\u003e On 7/12/09, Igor Kovalenko \u003cigor.v.kovalenko@gmail.com\u003e wrote:\n\u003e\u003e Good trap handling is required to process interrupts.\n\u003e\u003e  This patch fixes the following:\n\u003e\u003e\n\u003e\u003e  - sparc64 has no wim register\n\u003e\u003e  - sparc64 has no psret register, use IE bit of pstate\n\u003e\u003e   extract IE checking code to cpu_interrupts_enabled\n\u003e\u003e  - alternate globals are not available if cpu has GL feature\n\u003e\u003e   in this case bit AG of pstate is constant zero\n\u003e\u003e  - write to pstate must actually write pstate\n\u003e\u003e   even if cpu has GL feature\n\u003e\u003e\n\u003e\u003e  Also timer interrupt is handled using do_interrupt.\n\u003e\n\u003e A bit too much for one patch. Please also remove the code instead of\n\u003e commenting out.\n\nI now excluded timer interrupt related part.\nTo my mind other changes are essentially tied together.\n\n\u003e PUT_PSR for Sparc64 needs CC_OP \u003d CC_OP_FLAGS; like Sparc32.\n\nFixed, please find attached the updated version.\n\n--\nKind regards,\nIgor V. Kovalenko\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "38335f8b4f5990100ebffc66fd3c98bf4bfca1b9",
      "old_mode": 33188,
      "old_path": "cpu-exec.c",
      "new_id": "9baa9495c2836e27eb9c857d21705dde56bc4920",
      "new_mode": 33188,
      "new_path": "cpu-exec.c"
    },
    {
      "type": "modify",
      "old_id": "d592bea3601593273182525f1da724dd2992ff4c",
      "old_mode": 33188,
      "old_path": "target-sparc/cpu.h",
      "new_id": "76e1e796ba367e21c3694f1753721cf1bd6e3fb7",
      "new_mode": 33188,
      "new_path": "target-sparc/cpu.h"
    },
    {
      "type": "modify",
      "old_id": "f37c8ad994f81852eb19f39b0fbec9bf46e6d679",
      "old_mode": 33188,
      "old_path": "target-sparc/exec.h",
      "new_id": "e120d6fed4c867f60f8d09a3ece8831e25235fe5",
      "new_mode": 33188,
      "new_path": "target-sparc/exec.h"
    },
    {
      "type": "modify",
      "old_id": "d133294eddcbb4cd5d55f920550ac8701043d2a5",
      "old_mode": 33188,
      "old_path": "target-sparc/helper.c",
      "new_id": "5f9ad409edfcf2c757a4ddede080c2f3a477206a",
      "new_mode": 33188,
      "new_path": "target-sparc/helper.c"
    },
    {
      "type": "modify",
      "old_id": "2449fc717bf65d9106cb0793ea2553bb68a47ec8",
      "old_mode": 33188,
      "old_path": "target-sparc/op_helper.c",
      "new_id": "d25b642c06235153c12c23ecb7cc1c9c874c4c38",
      "new_mode": 33188,
      "new_path": "target-sparc/op_helper.c"
    }
  ]
}
