[PATCH] D62653: [Mips][DSP] Fix physregs incorrectly marked as dead.

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 26 12:08:03 PDT 2019


efriedma added inline comments.


================
Comment at: lib/Target/Mips/MipsSEISelDAGToDAG.cpp:147
+    if (Res->second->isDead())
+      Res->second->setIsDead(false);
+    DeadImplRegs.erase(Res);
----------------
I'm still not really happy with the setIsDead(false), but I guess it's not a big deal if we aren't actually depending on those register defs for correct scheduling. Could probably use a comment explaining that, though.


================
Comment at: lib/Target/Mips/MipsSEISelDAGToDAG.cpp:158
+  Reg = MipsRegisterInfo::getDSPOutFlagIfSubreg(Reg);
+  MO.setIsDead();
+  DeadImplRegs[Reg] = &MO;
----------------
Does this setIsDead() call actually run for some testcase?  I don't see any dead flag in your testcase.


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

https://reviews.llvm.org/D62653





More information about the llvm-commits mailing list