[PATCH] D63816: [ARM] WLS/LE Code Generation
Sam Parker via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Jun 28 05:22:44 PDT 2019
samparker marked 2 inline comments as done.
samparker added inline comments.
================
Comment at: lib/Target/ARM/ARMLowOverheadLoops.cpp:144
+ Pred = MBB;
+ Start = SearchForStart(MBB);
+ }
----------------
SjoerdMeijer wrote:
> As soon as we found one, can we stop? Or, can we continue looking as a sanity check to see if we find more and bail with a diagnostic?
We carry on searching just in case there's multiple predecessors with multiple loop starts. I'll add a TODO here because I think having multiple LoopStarts is fine and we need to support it, but currently this pass is not setup for it.
================
Comment at: lib/Target/ARM/ARMLowOverheadLoops.cpp:320
+ Start = ExpandLoopStart(ML, Start);
+ RemoveDeadBranch(Start);
+ End = ExpandLoopEnd(ML, Dec, End);
----------------
dmgreen wrote:
> These is something called ARMBaseInstrInfo::analyzeBranch which can help optimise away these unconditional fallthroughs too, if it can be made to work with loloop instructions.
I'll add a TODO
Repository:
rL LLVM
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D63816/new/
https://reviews.llvm.org/D63816
More information about the llvm-commits
mailing list