)]}'
{
  "commit": "b9693dfdefbe07e1412e995b19d5ebc2ae442558",
  "tree": "c6a68df6ddf3cf5f7696d88e6b90e6a79aa0221f",
  "parents": [
    "a4d224859d0b92c5141a84fa12aa7eb1c1818997"
  ],
  "author": {
    "name": "Jakub Jelinek",
    "email": "jakub@redhat.com",
    "time": "Tue Nov 25 10:30:51 2025 +0100"
  },
  "committer": {
    "name": "Jakub Jelinek",
    "email": "jakub@gcc.gnu.org",
    "time": "Mon Dec 08 08:07:47 2025 +0100"
  },
  "message": "openmp: Fix up OpenMP expansion of collapsed loops [PR120564]\n\nMost of gimple_build_cond_empty callers call just build2 to prepare\ncondition which is put into GIMPLE_COND, but this one spot has been\nusing incorrectly fold_build2.  Now the arguments of the *build2 were\nalready gimplified, but the folding of some conditions can turn say\nunsigned_var \u003e INT_MAX into (int) unsigned_var \u003c 0 etc. and thus\nturn the condition into something invalid in gimple, because we only\ntry to regimplify the operands if they refer to some decl which needs\nto be regimplified (has DECL_VALUE_EXPR on it).\n\nFixed by also using build2 instead of fold_build2.\n\n2025-11-25  Jakub Jelinek  \u003cjakub@redhat.com\u003e\n\n\tPR middle-end/120564\n\t* omp-expand.cc (extract_omp_for_update_vars): Use build2 instead of\n\tfold_build2 to build argument for gimple_build_cond_empty.\n\n\t* c-c++-common/gomp/pr120564.c: New test.\n\n(cherry picked from commit a117fd63e423fb60f5e5f07125a11c7183109bf2)\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "385fe1cc88705ee8afde8ba17e5864ec3677f010",
      "old_mode": 33188,
      "old_path": "gcc/omp-expand.cc",
      "new_id": "6acfd83411871991998d32b1ce6de0d8c9a9864c",
      "new_mode": 33188,
      "new_path": "gcc/omp-expand.cc"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4dfa4fcfbc91c7f1d67ea640b4c9f27354f657b7",
      "new_mode": 33188,
      "new_path": "gcc/testsuite/c-c++-common/gomp/pr120564.c"
    }
  ]
}
