)]}'
{
  "commit": "1f4cc0f7a14b52fdfbd02ac890cc7aedbdfb1979",
  "tree": "703a05dd00dd389771ecd880756235d38faa8e85",
  "parents": [
    "437be2f97377104a5cf839a9f9d3662155c02dfe"
  ],
  "author": {
    "name": "Jakub Jelinek",
    "email": "jakub@redhat.com",
    "time": "Thu Jul 30 09:52:45 2026 +0200"
  },
  "committer": {
    "name": "Jakub Jelinek",
    "email": "jakub@gcc.gnu.org",
    "time": "Thu Jul 30 09:52:45 2026 +0200"
  },
  "message": "match.pd: Fix .PARITY(~x) simplification [PR126471]\n\nThe parity(~X) simpliciation to parity(X) is incorrect for types with\nodd element precision, in that case parity(~X) is equivalent to\nparity(X) ^ 1.\nThe following patch fixes this.\n\n2026-07-30  Jakub Jelinek  \u003cjakub@redhat.com\u003e\n\n\tPR tree-optimization/126471\n\t* match.pd (parity(~X) is parity(X)): Only optimize this way\n\tif element_precision is even, otherwise optimize into parity(X) ^ 1.\n\n\t* gcc.dg/bitint-139.c: New test.\n\nReviewed-by: Andrea Pinski \u003candrew.pinski@oss.qualcomm.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4b2a360966c9742b235283e97e0a21e8c7178935",
      "old_mode": 33188,
      "old_path": "gcc/match.pd",
      "new_id": "d6702f66733ddda2064d654f3ed573b6554379be",
      "new_mode": 33188,
      "new_path": "gcc/match.pd"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f71b90e7063381e25c4d85562d59cda379e81274",
      "new_mode": 33188,
      "new_path": "gcc/testsuite/gcc.dg/bitint-139.c"
    }
  ]
}
