[PATCH] D71696: [CodeGen] WIP MachinePostRAUpdater

Sam Parker via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 19 05:56:18 PST 2019


samparker updated this revision to Diff 234707.
samparker added a comment.

- isSafeToRemove now looks at the use-def chain of the block and returns yes/no along with all the instructions that should be removed. For low-overhead loops, this is means that we don't have to explicitly check for LR users within the loop and the updater will look at copies so we can remove them too! The new test case is an example where LR copies previously prevented the transform.


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

https://reviews.llvm.org/D71696

Files:
  llvm/include/llvm/CodeGen/MachinePostRAUpdater.h
  llvm/include/llvm/CodeGen/ReachingDefAnalysis.h
  llvm/lib/CodeGen/CMakeLists.txt
  llvm/lib/CodeGen/MachinePostRAUpdater.cpp
  llvm/lib/CodeGen/ReachingDefAnalysis.cpp
  llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
  llvm/test/CodeGen/Thumb2/LowOverheadLoops/dont-remove-loop-update2.mir
  llvm/test/CodeGen/Thumb2/LowOverheadLoops/mve-tail-data-types.ll
  llvm/test/CodeGen/Thumb2/LowOverheadLoops/remove-lr-mov.mir
  llvm/test/CodeGen/Thumb2/LowOverheadLoops/wlstp.mir

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D71696.234707.patch
Type: text/x-patch
Size: 61887 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20191219/6f2559d3/attachment.bin>


More information about the llvm-commits mailing list