[PATCH] D62653: [Mips][DSP] Fix physregs incorrectly marked as dead.
Mirko Brkusanin via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Jun 26 06:11:04 PDT 2019
mbrkusanin updated this revision to Diff 206634.
mbrkusanin added a comment.
Marked all instructions that define part of DSPControl register with TSFlag named defsDSPCtrl. This helps us avoid running unnecessary code on instructions that don't need it.
While we could add something similar for RDDSP and WRDSP instructions to make sure all implicit operands are added (which appears that it needs to be done in common CodeGen not Mips) before dead flag are set, it would still not help. This is because other instructions that use DSPControl are not glued to RDDSP and/or WRDSP. So we would still need to check for those instructions some other way which would not be any more efficient then current solution.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D62653/new/
https://reviews.llvm.org/D62653
Files:
lib/CodeGen/LiveVariables.cpp
lib/Target/Mips/MCTargetDesc/MipsBaseInfo.h
lib/Target/Mips/MicroMipsDSPInstrInfo.td
lib/Target/Mips/MipsDSPInstrInfo.td
lib/Target/Mips/MipsInstrFormats.td
lib/Target/Mips/MipsInstrInfo.cpp
lib/Target/Mips/MipsInstrInfo.h
lib/Target/Mips/MipsInstrInfo.td
lib/Target/Mips/MipsRegisterInfo.cpp
lib/Target/Mips/MipsRegisterInfo.h
lib/Target/Mips/MipsSEISelDAGToDAG.cpp
lib/Target/Mips/MipsSEISelDAGToDAG.h
test/CodeGen/Mips/dsp-implicit-dead.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D62653.206634.patch
Type: text/x-patch
Size: 42877 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190626/2cea1b48/attachment.bin>
More information about the llvm-commits
mailing list