)]}'
{
  "commit": "18332f138c732b8275db2efe60b2cf0c830da565",
  "tree": "ae1dc5e26450f75b737e281ab3a94d230a7a26c6",
  "parents": [
    "3c8d104b7eb423a94c0d777bbd7522ce44de5fc5"
  ],
  "author": {
    "name": "mkovacevic99",
    "email": "mkovacevic@baylibre.com",
    "time": "Fri May 15 17:47:07 2026 +0200"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Fri May 15 16:47:07 2026 +0100"
  },
  "message": "[RegAllocFast] Eliminate dead copies (#196056)\n\ngithub issue: https://github.com/llvm/llvm-project/issues/168201\n\nThis patch extends copy elimination in **RegAllocFast** to catch an\nadditional class of redundant copies. Previously, only identity copies\n(where source and destination registers are the same) were marked for\nremoval.\n\nNow, we check whether the current instruction is dead and remove it if\nit is.\nThe change:\n\n- Updates the copy-elimination condition to include dead destination\noperands.\n\n- Improves debug output to be more generic.\n\nThis reduces unnecessary instructions and can lead to slightly better\ncodegen by eliminating dead copies earlier in the fast register\nallocation pass.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6241ae94130dc6159e79719850b2363fe9b79301",
      "old_mode": 33188,
      "old_path": "llvm/lib/CodeGen/RegAllocFast.cpp",
      "new_id": "dc505114ae6d797ddba4cd5e53f39b1852dff8ab",
      "new_mode": 33188,
      "new_path": "llvm/lib/CodeGen/RegAllocFast.cpp"
    },
    {
      "type": "modify",
      "old_id": "16ef0cbc8a8100af9d0c43a11ed9cc7a5891484f",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AArch64/fast-isel-atomic-fallback.ll",
      "new_id": "c0b79af962228ccd0ac5ad36925179a726a54727",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AArch64/fast-isel-atomic-fallback.ll"
    },
    {
      "type": "modify",
      "old_id": "867e89748d86d51ffcf1cd310a7a5afa4b9e6119",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AArch64/swifterror.ll",
      "new_id": "1ef88cfc160693128030cea78e973006b7a62e9e",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AArch64/swifterror.ll"
    },
    {
      "type": "modify",
      "old_id": "3df0254088e1ef8a067aca3f3ed266feeb6af7e7",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AMDGPU/div_i128.ll",
      "new_id": "40b1b1f83b642f0799f19a99dff6d5ddbb42a8bf",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AMDGPU/div_i128.ll"
    },
    {
      "type": "modify",
      "old_id": "bf84e32de657b11283a2996003aa8adc70d0fd8b",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AMDGPU/extract_vector_dynelt.ll",
      "new_id": "c381b1806acdfb1d652996cafc22c031519d87b0",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AMDGPU/extract_vector_dynelt.ll"
    },
    {
      "type": "modify",
      "old_id": "a526b1ec1650226f327e303a1bd504f97e132197",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AMDGPU/fix-crash-valu-hazard.ll",
      "new_id": "5632214d0ef528a91ea0f432eaaf8a9cec57ca54",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AMDGPU/fix-crash-valu-hazard.ll"
    },
    {
      "type": "modify",
      "old_id": "a9e67ff3fdcbbaa78e3de65512ced94bd644a49b",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AMDGPU/indirect-addressing-si.ll",
      "new_id": "1961ba53c1661bba69c29a82516acef31aefc0bb",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AMDGPU/indirect-addressing-si.ll"
    },
    {
      "type": "modify",
      "old_id": "6e6875c84c5866bd22f90d8d54d080d4385c32a7",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AMDGPU/indirect-addressing-term.ll",
      "new_id": "1814cca72f6144249aeac455c039659489842a44",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AMDGPU/indirect-addressing-term.ll"
    },
    {
      "type": "modify",
      "old_id": "03511ec11acd3d6acb33298a9af49e2422ef65ba",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AMDGPU/insert_vector_dynelt.ll",
      "new_id": "ea406781a4e794d30f77ebc98dcd216af0e654a7",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AMDGPU/insert_vector_dynelt.ll"
    },
    {
      "type": "modify",
      "old_id": "15fb5e756d0586e4b6697ecc92541a808589ced7",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AMDGPU/memory-legalizer-buffer-atomics.ll",
      "new_id": "a0127b8baed32c93ccd641781a01a6bdb805ac30",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AMDGPU/memory-legalizer-buffer-atomics.ll"
    },
    {
      "type": "modify",
      "old_id": "a4fcdf3f31d8c89a747306ce59fae52626eb0501",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AMDGPU/memory-legalizer-local-agent.ll",
      "new_id": "0907a1dd05955f2647a7936aee9fe8d7fd541817",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AMDGPU/memory-legalizer-local-agent.ll"
    },
    {
      "type": "modify",
      "old_id": "9dfdf42255eafc939d84494659ab048de83c6623",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AMDGPU/memory-legalizer-local-cluster.ll",
      "new_id": "1255ba204ede7c3a873be5bb838ee388fc99fc8c",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AMDGPU/memory-legalizer-local-cluster.ll"
    },
    {
      "type": "modify",
      "old_id": "50054d9862bfe9e2303e6f58da56d2c7cd925d45",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AMDGPU/memory-legalizer-local-nontemporal.ll",
      "new_id": "58890b0b87ab06b6b0e1407ecb7c4d875ba1ed7a",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AMDGPU/memory-legalizer-local-nontemporal.ll"
    },
    {
      "type": "modify",
      "old_id": "e5543529fc372d069c24f7657c199f7882b9734d",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AMDGPU/memory-legalizer-local-singlethread.ll",
      "new_id": "7bd61b20b7450b3af8765625e402c07777691c25",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AMDGPU/memory-legalizer-local-singlethread.ll"
    },
    {
      "type": "modify",
      "old_id": "bd22e80baf9e61001d04134ebf593a8c72497b0c",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AMDGPU/memory-legalizer-local-system.ll",
      "new_id": "23bcb2d758772c886f8f25a28a418224b6432977",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AMDGPU/memory-legalizer-local-system.ll"
    },
    {
      "type": "modify",
      "old_id": "f2caa062df32a4a92aa0b964a5346841ee5115c9",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AMDGPU/memory-legalizer-local-volatile.ll",
      "new_id": "c0420028488dc5019387589c86aaeb723ac3925a",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AMDGPU/memory-legalizer-local-volatile.ll"
    },
    {
      "type": "modify",
      "old_id": "82542e26711e2d7ad10b3bad4f1d7011194365d5",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AMDGPU/memory-legalizer-local-wavefront.ll",
      "new_id": "b0d00d43bc44caa778ef21d4bbd10b0e886f5f0f",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AMDGPU/memory-legalizer-local-wavefront.ll"
    },
    {
      "type": "modify",
      "old_id": "9c5f8c4f62ef09c0190429f4f1fab053b1bfd2a0",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AMDGPU/memory-legalizer-local-workgroup.ll",
      "new_id": "ed55b77feb6e07f5e5afd6ce2a4fe023e7ffef26",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AMDGPU/memory-legalizer-local-workgroup.ll"
    },
    {
      "type": "modify",
      "old_id": "46d63c87656d9d5ca103de6d4a05e1da8c77b182",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands-non-ptr-intrinsics.ll",
      "new_id": "c01ab74c5a9096e2d6e4b7c3217738dbbdfb150d",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands-non-ptr-intrinsics.ll"
    },
    {
      "type": "modify",
      "old_id": "80b5536b7e160f81b3e8d7cded5d88230558edcb",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AMDGPU/rem_i128.ll",
      "new_id": "fcb08ac782e9e5c3ffe07b5c018ef06bc5d40c74",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AMDGPU/rem_i128.ll"
    },
    {
      "type": "modify",
      "old_id": "599557cad2eb482e1dbfbc58c3ac5d88bfbc5bf2",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AMDGPU/vgpr-large-tuple-alloc-error.ll",
      "new_id": "8582525a3246b806d925ebad75b8e49865af48a8",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AMDGPU/vgpr-large-tuple-alloc-error.ll"
    },
    {
      "type": "modify",
      "old_id": "a5f53e662b4217fb54c47f0b3036a3129ef449c0",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll",
      "new_id": "6aacbce89c986923cdbce82b41856216106a9127",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll"
    },
    {
      "type": "modify",
      "old_id": "65ebf07b21267ef71f1d6a96b038af908e509170",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AMDGPU/wwm-reserved.ll",
      "new_id": "0934a57a458477f2293dc9c8c8b33692c284f16c",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AMDGPU/wwm-reserved.ll"
    },
    {
      "type": "modify",
      "old_id": "92b77f57915a48ac88e0d2a5b9d3c01a0d540ac0",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/ARM/legalize-bitcast.ll",
      "new_id": "aa7fdb0a2510f0ffb6ac5b48d27905f0ef177257",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/ARM/legalize-bitcast.ll"
    },
    {
      "type": "modify",
      "old_id": "c1b1c1f7568bb60d84646f37c82ac878a7db1300",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/LoongArch/spill-ra-without-kill.ll",
      "new_id": "9e56e4d2bf49ed856711303129d1332dc394b1ab",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/LoongArch/spill-ra-without-kill.ll"
    },
    {
      "type": "modify",
      "old_id": "02ae8d2b7480e77590c5c032a37793150528da18",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/Mips/atomic-min-max.ll",
      "new_id": "5849ba13cc37a1aeec3302488a7ee65e3229b654",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/Mips/atomic-min-max.ll"
    },
    {
      "type": "modify",
      "old_id": "eaf99cc7023a310c24d205b495c8101270ad80b3",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/Mips/atomic.ll",
      "new_id": "f83de83b3d037d88235457862054eecaa9df8853",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/Mips/atomic.ll"
    },
    {
      "type": "modify",
      "old_id": "88e5119c5ed5bf29b4da6e01e06e88986ff6fa59",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/Mips/implicit-sret.ll",
      "new_id": "d76153aa5c10e6a7af81225b8e9167693861e7a3",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/Mips/implicit-sret.ll"
    },
    {
      "type": "modify",
      "old_id": "f48f8a5c60e0bd176c19c8321636771e9f747148",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/PowerPC/aix-p9-insert-extract.ll",
      "new_id": "75a67e359fbea942f8400bbd98bbb64af03d8a48",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/PowerPC/aix-p9-insert-extract.ll"
    },
    {
      "type": "modify",
      "old_id": "489260b4e0aeb9f92b5e18e62b7168eb4f004120",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/PowerPC/aix-small-local-dynamic-tls-types.ll",
      "new_id": "35531513349df2b5ee39c2ca45406bf8e3139d51",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/PowerPC/aix-small-local-dynamic-tls-types.ll"
    },
    {
      "type": "modify",
      "old_id": "02e916d1618c9d3255da47970f4d18b4a729962f",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/PowerPC/aix-tls-le-ldst-O0.ll",
      "new_id": "b0425bab04a77b707a7848e149d7e7999fa5b312",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/PowerPC/aix-tls-le-ldst-O0.ll"
    },
    {
      "type": "modify",
      "old_id": "7e10db76a3640ee67099b25167508208128c235a",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/PowerPC/ppcsoftops.ll",
      "new_id": "3fcff5878a79500fa0b8552a54f50e3689238898",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/PowerPC/ppcsoftops.ll"
    },
    {
      "type": "modify",
      "old_id": "85a6de1095a03b6c8ae883fb039b247eff51c8a7",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/RISCV/constpool-known-bits.ll",
      "new_id": "2d8dd1b1669dbd794c71d07c7b54c65baee323a3",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/RISCV/constpool-known-bits.ll"
    },
    {
      "type": "modify",
      "old_id": "f05f6ab16c5e3012c7e2ff76f38eeaf97dcf295a",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/RISCV/rvv/rv32-spill-vector-csr.ll",
      "new_id": "e48694296ba2a97c6afdc3caa5eea3433fdba7be",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/RISCV/rvv/rv32-spill-vector-csr.ll"
    },
    {
      "type": "modify",
      "old_id": "138422c5a50e2feaebd6e24cc423520877e023d6",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/RISCV/rvv/rv64-spill-vector-csr.ll",
      "new_id": "512c96b5f59606e680929c36e46f96b245cb4687",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/RISCV/rvv/rv64-spill-vector-csr.ll"
    },
    {
      "type": "modify",
      "old_id": "5cc7bfbc7fba6d422008619fd5f9520c8aadbeab",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/RISCV/xcvalu.ll",
      "new_id": "e8f6fe93b6a8cfa534a04c4a048cf78a47014aa9",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/RISCV/xcvalu.ll"
    },
    {
      "type": "modify",
      "old_id": "0a5c16813722eeaafa185b748200c32f1ec9f934",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/X86/AMX/amx-configO0toO0.ll",
      "new_id": "45f5f3b8dbb74c19d8e6e6f1ad0242e800610d5f",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/X86/AMX/amx-configO0toO0.ll"
    },
    {
      "type": "modify",
      "old_id": "2412e7aefdc2f9d8e635f0c7758f0af077fc1c43",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/X86/avx512-mask-zext-bugfix.ll",
      "new_id": "a2a92507d16d35a42a95642d8e9a9a57368bfc20",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/X86/avx512-mask-zext-bugfix.ll"
    },
    {
      "type": "modify",
      "old_id": "d88e95c34a4a3f79eaefb4d1104c416bc346d5c7",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/X86/avxneconvert-intrinsics-shared.ll",
      "new_id": "8f3c0cb78036f4c18ab157495cb40630caefacb6",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/X86/avxneconvert-intrinsics-shared.ll"
    },
    {
      "type": "modify",
      "old_id": "ea7bb096169819e60a691161e6f582cb18d71e57",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/X86/bug47278.mir",
      "new_id": "f941b56bf8af94c6f25e3ac788d52cba34d35cba",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/X86/bug47278.mir"
    },
    {
      "type": "modify",
      "old_id": "41b8a0141b63d8be5f196ffacfb73c2b54e3ee2b",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/X86/huge-stack.ll",
      "new_id": "04cab8f010acc3336151cca77cdcb850368252e2",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/X86/huge-stack.ll"
    },
    {
      "type": "modify",
      "old_id": "69ae1f19f3200ef085141fd09d089ba86ad32f12",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/X86/pcsections-atomics.ll",
      "new_id": "3b813d2e8a6741ebaabccb56219da3bb67464b66",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/X86/pcsections-atomics.ll"
    },
    {
      "type": "modify",
      "old_id": "0abc87f832ee83b086ee3e311ed24a70238618fc",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/X86/pr32451.ll",
      "new_id": "8384c6b3923d208daa6cac44212ecf2e568872ea",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/X86/pr32451.ll"
    },
    {
      "type": "modify",
      "old_id": "36411e42510f4c7de516e3fb1582e18827946b5d",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/X86/pr41678.ll",
      "new_id": "7f348f3c1b65c7e40b4976c43c23608eb1fd3f8a",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/X86/pr41678.ll"
    }
  ]
}
