)]}'
{
  "commit": "55e9aef65b2d3705089c2de601867aa6e7cc261d",
  "tree": "297453e90a15bb05d97a1bf232cc2c62f7da273d",
  "parents": [
    "11ae0ce305601ebf85b1a09b130cb3e7b46157f9"
  ],
  "author": {
    "name": "Yongqiang Tian",
    "email": "yqtian668@gmail.com",
    "time": "Wed Sep 16 22:17:21 2026 +1000"
  },
  "committer": {
    "name": "Richard Biener",
    "email": "rguenther@suse.de",
    "time": "Fri Sep 18 08:20:15 2026 +0200"
  },
  "message": "combine: Ignore debug insns in volatile checks [PR127422]\n\nA DEBUG_INSN can retain a volatile MEM after the corresponding ordinary\ninstruction has been deleted.  Do not treat that non-executing payload as an\nintervening volatile access in can_combine_p.\n\nAssisted-by: OpenAI Codex 5.6 Sol, co-reviewed by Claude and Yongqiang Tian.\n\n\tPR rtl-optimization/127422\n\ngcc/ChangeLog:\n\n\t* combine.cc (can_combine_p): Ignore debug instructions when scanning\n\tfor intervening volatile references.\n\ngcc/testsuite/ChangeLog:\n\n\t* gcc.dg/pr127422.c: New test.\n\nSigned-off-by: Yongqiang Tian \u003cyqtian668@gmail.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "35c6a5299507d318bcb74887850e1fa70b39238b",
      "old_mode": 33188,
      "old_path": "gcc/combine.cc",
      "new_id": "11427f5a92045f991886313b5bb22a0043a9b92c",
      "new_mode": 33188,
      "new_path": "gcc/combine.cc"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "bba30ad7844993229ae94423015fa66d7c62f812",
      "new_mode": 33188,
      "new_path": "gcc/testsuite/gcc.dg/pr127422.c"
    }
  ]
}
