[PATCH] D157564: [MCP] Invalidate copy for super register in copy source

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 9 17:06:15 PDT 2023


arsenm added inline comments.


================
Comment at: llvm/lib/CodeGen/MachineCopyPropagation.cpp:191-192
 
     MCRegister Src = CopyOperands->Source->getReg().asMCReg();
     MCRegister Def = CopyOperands->Destination->getReg().asMCReg();
 
----------------
Can we track all of this in regunits? Following registers is way more confusing


================
Comment at: llvm/lib/CodeGen/MachineCopyPropagation.cpp:210
+      if (!is_contained(Copy.SrcRegs, Src))
+        Copy.SrcRegs.push_back(Src);
       Copy.LastSeenUseInCopy = MI;
----------------
I don't see how SrcRegs is used any differently. Should this just use a more normal looking liveness scan where there's only one set and each def removes the live uses?


================
Comment at: llvm/test/CodeGen/AMDGPU/mcp-use-before-def.mir:27-28
+...
+## NOTE: These prefixes are unused and the list is autogenerated. Do not add tests below this line:
+# CHECK: {{.*}}
----------------
Leftover?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D157564



More information about the llvm-commits mailing list