This is an archive of the discontinued LLVM Phabricator instance.

[RDA][ARM] Move functionality into RDA
ClosedPublic

Authored by samparker on Jan 27 2020, 3:34 AM.

Details

Summary

Add several 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 convenient to use. This is an NFC for LowOverheadLoops.

Diff Detail

Event Timeline

samparker created this revision.Jan 27 2020, 3:34 AM
Herald added a project: Restricted Project. · View Herald TranscriptJan 27 2020, 3:34 AM
SjoerdMeijer accepted this revision.Jan 28 2020, 8:11 AM

Looks like a good and useful reshuffle to me

llvm/include/llvm/CodeGen/ReachingDefAnalysis.h
118

nit: missing comment/description

189

nit: if this is only a helper for isSafeToMoveForwards/Backwards, should this be a private function?

llvm/lib/CodeGen/ReachingDefAnalysis.cpp
376

nit: From's?

This revision is now accepted and ready to land.Jan 28 2020, 8:11 AM
samparker marked 2 inline comments as done.Jan 28 2020, 11:39 PM
samparker added inline comments.
llvm/include/llvm/CodeGen/ReachingDefAnalysis.h
118

I'll add it before committing.

189

It is!

This revision was automatically updated to reflect the committed changes.