)]}'
{
  "commit": "933b4f9df15ff89bb7f989b07cb0285cf7ec2d54",
  "tree": "d9a24fafab16f4e4745710c65fd6bcaa129313df",
  "parents": [
    "f1c1322dca42d88edef68762ab52a4c6aacd218a"
  ],
  "author": {
    "name": "Stefan Schulze Frielinghaus",
    "email": "stefansf@gcc.gnu.org",
    "time": "Wed Jul 29 07:40:44 2026 +0200"
  },
  "committer": {
    "name": "Stefan Schulze Frielinghaus",
    "email": "stefansf@gcc.gnu.org",
    "time": "Thu Jul 30 12:51:56 2026 +0200"
  },
  "message": "s390: Fix s390_canonicalize_comparison\n\nCombine may come up with insns of the form:\n\nTrying 230 -\u003e 231:\n  230: %cc:CCZ\u003dunspec[r82:DF,0xfc0]TDC_INSN\n  231: r83:SI\u003dunspec[%cc:CCZ]CC_TO_INT\n      REG_DEAD %cc:CCZ\nFailed to match this instruction:\n(set (reg:SI 83 [ _38 ])\n    (unspec:SI [\n            (unspec:CCZ [\n                    (reg:DF 82 [ _37 ])\n                    (const_int 4032 [0xfc0])\n                ] UNSPEC_TDC_INSN)\n        ] UNSPEC_CC_TO_INT))\n\nwhere the operand for UNSPEC_CC_TO_INT is not a register.  Deal with\nthis during s390_canonicalize_comparison.\n\nWhile on it canonicalize GET_CODE (x) \u003d\u003d REG to REG_P (x).\n\ngcc/ChangeLog:\n\n\t* config/s390/s390.cc (s390_canonicalize_comparison): Verify op0\n\tfor an UNSPEC_CC_TO_INT is a register.\n\n(cherry picked from commit 8bfaf339d53e6cc2d78a36c0014161e55cafbd5a)\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "18840b5080f6767a07f0a4f6f6181f7a1b7ceca7",
      "old_mode": 33188,
      "old_path": "gcc/config/s390/s390.cc",
      "new_id": "edcd39c171affb4ce515b2662e61b4f66e98f8bf",
      "new_mode": 33188,
      "new_path": "gcc/config/s390/s390.cc"
    }
  ]
}
