[RDA][ARM] Move functionality into RDA
authorSam Parker <sam.parker@arm.com>
Wed, 29 Jan 2020 08:26:11 +0000 (03:26 -0500)
committerSam Parker <sam.parker@arm.com>
Wed, 29 Jan 2020 08:27:47 +0000 (03:27 -0500)
commitac30ea2f877ed82911fd1e3fd9f9d86c8072d05f
treef8ad52c1070e572bf02ab2343e7e38c7768df53b
parentab8b22d1c2d97b1e50c73b8640c3acb192652059
[RDA][ARM] Move functionality into RDA

Add several new helpers to RDA:
- hasLocalDefBefore
- isRegDefinedAfter
- isSafeToDefRegAt

And move two bits of logic from ARMLowOverheadLoops into RDA:
- isSafeToMove
- isSafeToRemove

Both of these have some wrappers too to make them more convienent to
use.

Differential Revision: https://reviews.llvm.org/D73460
llvm/include/llvm/CodeGen/ReachingDefAnalysis.h
llvm/lib/CodeGen/ReachingDefAnalysis.cpp
llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp