[PATCH] D134183: [WIP][RegCoalescer][TwoAddrInst] Keep undef subreg copies that are used in early-clobber insts

Abinav Puthan Purayil via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 20 03:45:12 PDT 2022


abinavpp added inline comments.


================
Comment at: llvm/lib/CodeGen/RegisterCoalescer.cpp:1662
+  if (DstSubIdx) {
+    for (const MachineInstr &Use : MRI->use_nodbg_instructions(DstReg)) {
+      for (const MachineOperand &Def : Use.defs()) {
----------------
arsenm wrote:
> My initial thought is you shouldn't have to scan over all use instructions to avoid this and you can query the range and check for EC slots
We're looking for the EC defs that are using `DstReg`. There are no EC slots in DstReg's LiveRange. I don't know if there is any quick way to get the other EC slots that are overlapping with DstReg's LiveRange.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D134183/new/

https://reviews.llvm.org/D134183



More information about the llvm-commits mailing list