)]}'
{
  "commit": "c3ceac8d1e1645cb5e7a2502ff17d9effce70699",
  "tree": "e8e063702ab7405e9e8d3cc6c70e2bce659e2c35",
  "parents": [
    "30b4b8f2baf42c8842233a2d075c77a01eee4d29"
  ],
  "author": {
    "name": "Tamar Christina",
    "email": "tamar.christina@arm.com",
    "time": "Tue Aug 04 15:27:12 2026 +0100"
  },
  "committer": {
    "name": "Tamar Christina",
    "email": "tamar.christina@arm.com",
    "time": "Tue Aug 04 15:27:12 2026 +0100"
  },
  "message": "vect: simplify is_linear_load_p using vec_perm_builder and reject invalid [PR126592]\n\nis_linear_load_p is supposed to test for valid permutations of lanes of complex\narithmetic.  It was written as a manual loop that iteratively discredited\nwhat a permutation could be and returned the permute.\n\nHowever the code is a bit hard to prove correct and as PR1265992 points out it\naccepts at least one invalid permute [0 2 2 2].\n\nTo fix this and simplify the code to prevent other issues I have rewritten it to\nuse vec_perm_indices and use the convenient helper series_p ();\n\ngcc/ChangeLog:\n\n\tPR tree-optimization/126592\n\t* tree-vect-slp-patterns.cc (is_linear_load_p): Rewrite using\n\tvec_perm_indices.\n\ngcc/testsuite/ChangeLog:\n\n\tPR tree-optimization/126592\n\t* gcc.target/aarch64/pr126592.c: New test.\n",
  "tree_diff": [
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "00e82c1a7954de9a96535d4027ff8fd8f781c197",
      "new_mode": 33188,
      "new_path": "gcc/testsuite/gcc.target/aarch64/pr126592.c"
    },
    {
      "type": "modify",
      "old_id": "3e2c0fe2c099348e055c2e08a7d899c9cbf71d49",
      "old_mode": 33188,
      "old_path": "gcc/tree-vect-slp-patterns.cc",
      "new_id": "c6cf44cfd0d3f5e0df359efa617c43baf17b2600",
      "new_mode": 33188,
      "new_path": "gcc/tree-vect-slp-patterns.cc"
    }
  ]
}
