[PATCH] D70009: [ARM][ReachingDefAnalysis] Use RDA for loloops
Sam Parker via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Nov 8 07:12:58 PST 2019
samparker created this revision.
samparker added a reviewer: dmgreen.
Herald added subscribers: hiraditya, kristof.beyls.
Herald added a project: LLVM.
Replace the searches for uses and defs, in ARMLowOverheadLoops, to calls into RDA. I've added a couple of methods into RDA to enable getting the MachineInstr that is the def, as well as being able to query what the MI an Id corresponds to.
I've also added an implicit CPSR def to LoopDec to simplify things and hopefully prevent more instructions from being inserted between LoopDec and LoopEnd.
I wasn't sure who to add for the ReachingDef changes... @craig.topper would you mind taking a look or suggesting someone?
https://reviews.llvm.org/D70009
Files:
llvm/include/llvm/CodeGen/ReachingDefAnalysis.h
llvm/lib/CodeGen/ReachingDefAnalysis.cpp
llvm/lib/Target/ARM/ARMInstrThumb2.td
llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
llvm/test/CodeGen/ARM/O3-pipeline.ll
llvm/test/CodeGen/Thumb2/LowOverheadLoops/cond-mov.mir
llvm/test/CodeGen/Thumb2/LowOverheadLoops/end-positive-offset.mir
llvm/test/CodeGen/Thumb2/LowOverheadLoops/massive.mir
llvm/test/CodeGen/Thumb2/LowOverheadLoops/mov-after-dls.mir
llvm/test/CodeGen/Thumb2/LowOverheadLoops/multiblock-massive.mir
llvm/test/CodeGen/Thumb2/LowOverheadLoops/revert-after-call.mir
llvm/test/CodeGen/Thumb2/LowOverheadLoops/revert-after-read.mir
llvm/test/CodeGen/Thumb2/LowOverheadLoops/revert-after-write.mir
llvm/test/CodeGen/Thumb2/LowOverheadLoops/revert-non-header.mir
llvm/test/CodeGen/Thumb2/LowOverheadLoops/revert-non-loop.mir
llvm/test/CodeGen/Thumb2/LowOverheadLoops/revert-while.mir
llvm/test/CodeGen/Thumb2/LowOverheadLoops/safe-def-no-mov.mir
llvm/test/CodeGen/Thumb2/LowOverheadLoops/size-limit.mir
llvm/test/CodeGen/Thumb2/LowOverheadLoops/switch.mir
llvm/test/CodeGen/Thumb2/LowOverheadLoops/unsafe-liveout.mir
llvm/test/CodeGen/Thumb2/LowOverheadLoops/unsafe-use-after.mir
llvm/test/CodeGen/Thumb2/LowOverheadLoops/while-negative-offset.mir
llvm/test/CodeGen/Thumb2/LowOverheadLoops/while.mir
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D70009.228444.patch
Type: text/x-patch
Size: 25139 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20191108/792536a0/attachment.bin>
More information about the llvm-commits
mailing list