)]}'
{
  "commit": "3bc8af8352c3783ae4d3cd3ca6bc4237aecf79a1",
  "tree": "51cf24af1526e92cc3fcdceec64611ce0fa5e1d5",
  "parents": [
    "1029f74c60b4d76b95d710427cb2694a9333942e"
  ],
  "author": {
    "name": "Matt Arsenault",
    "email": "Matthew.Arsenault@amd.com",
    "time": "Fri Mar 24 11:30:55 2023 -0400"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Sun Oct 01 01:41:43 2023 -0700"
  },
  "message": "RegAllocGreedy: Fix detection of lanes read by a bundle\n\nSplitKit creates questionably formed bundles of copies\nwhen it needs to copy a subset of live lanes and can\u0027t do\nit with a single subregister index. These are merely marked\nas part of a bundle, and don\u0027t start with a BUNDLE instruction.\nQueries for the slot index would give the first copy in the\nbundle, and we need to inspect the operands of all the other\nbundled copies.\n\nAlso fix and simplify detection of read lane subsets. This causes\nsome RISCV test regressions, but these look like accidentally beneficial\nsplits. I don\u0027t see a subrange based reason to perform these splits.\n\nAvoids some really ugly regressions in a future patch.\n\nhttps://reviews.llvm.org/D146859\n\nGitOrigin-RevId: 7252787dd95d3423c5160c11ad4cb89b3c5cd8f5\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a4e90e0dc7ff6a7b29577b4f69e2d2948e7671ad",
      "old_mode": 33188,
      "old_path": "lib/CodeGen/RegAllocGreedy.cpp",
      "new_id": "248cc1ac0ee2e1aa767557ed98951755151c58e6",
      "new_mode": 33188,
      "new_path": "lib/CodeGen/RegAllocGreedy.cpp"
    },
    {
      "type": "modify",
      "old_id": "936d055f8dbfa8f2293ce103e6038c5276c41be1",
      "old_mode": 33188,
      "old_path": "test/CodeGen/AMDGPU/splitkit-copy-bundle.mir",
      "new_id": "c318502b8a32d1efe7f99c777438f3229af8b86f",
      "new_mode": 33188,
      "new_path": "test/CodeGen/AMDGPU/splitkit-copy-bundle.mir"
    },
    {
      "type": "modify",
      "old_id": "1f3f30c674af8ea2c11fdf2afb07d27af25a0e41",
      "old_mode": 33188,
      "old_path": "test/CodeGen/AMDGPU/splitkit-copy-live-lanes.mir",
      "new_id": "71f4a4c1dedffa31fd7913f0ec87e3aa9ab4c6d0",
      "new_mode": 33188,
      "new_path": "test/CodeGen/AMDGPU/splitkit-copy-live-lanes.mir"
    },
    {
      "type": "modify",
      "old_id": "6d152cef124b4228314d1563c16334e9ed9e12d7",
      "old_mode": 33188,
      "old_path": "test/CodeGen/RISCV/rvv/vector-deinterleave-load.ll",
      "new_id": "a320aecc6fce49110f29d70e277c5214dbd25fe0",
      "new_mode": 33188,
      "new_path": "test/CodeGen/RISCV/rvv/vector-deinterleave-load.ll"
    },
    {
      "type": "modify",
      "old_id": "b8cef5816687b463930d13d3fefef6d5bfd4bcc2",
      "old_mode": 33188,
      "old_path": "test/CodeGen/RISCV/rvv/vector-deinterleave.ll",
      "new_id": "ef4baf34d23f03bcaf66b49fc6eafa85e565983f",
      "new_mode": 33188,
      "new_path": "test/CodeGen/RISCV/rvv/vector-deinterleave.ll"
    },
    {
      "type": "modify",
      "old_id": "7d662d1f1a990ff18ebeb3eb2248cc4166b7be89",
      "old_mode": 33188,
      "old_path": "test/CodeGen/Thumb2/mve-vst3.ll",
      "new_id": "d80dd5a673e20f256e8515b2135ca8a76f7b2da9",
      "new_mode": 33188,
      "new_path": "test/CodeGen/Thumb2/mve-vst3.ll"
    }
  ]
}
